首页 > 其他分享 >今日内容详细

今日内容详细

时间:2022-09-29 20:33:17浏览次数:34  
标签:jason res s1 字符串 内容 详细 l1 print 今日

数据类型内置方法理论

我们之前所学习的每一种数据类型本身都含有一系列的操作方法,内置方法是其中最多的(自带的功能)

在python中数据类型调用内置方法的统一句式为>>>:句点符
'jason'.字符串内置方法
绑定字符串的变量名.字符串内置方法
str.字符串内置方法
ps:数据类型的内置方法比较的多 我们如果想要掌握 不要光靠死记硬背 更多时候靠的是熟能生巧

整型内置方法与操作

1.类型转换(将其他数据类型转换成整型)
int(其他数据类型)
ps:浮点型可以直接转 字符串必须满足内部是纯数字才可以

2.进制数转换
十进制转其他进制
print(bin(100)) # 0b1100100
print(oct(100)) # 0o144
print(hex(100)) # 0x64
'''
数字的开头如果是0b则为二进制 0o则为八进制 0x则为十六进制
'''
其他进制转十进制
print(int(0b1100100))
print(int(0o144))
print(int(0x64))

    print(int("0b1100100", 2))
    print(int("0o144", 8))
    print(int("0x64", 16))

3.python自身对数字的敏感度较低(精确度低)
python这门语言其实真的一点都不厉害 主要是因为它背后有太多大佬

浮点型内置方法与操作

1.类型转换
	float(其他数据类型)
 	字符串里面可以允许出现一个小数点 其他都必须是纯数字

字符串内置方法与操作

在这里插入图片描述

1.类型转换
	str(其他数据类型)
	ps:可以转任意数据类型(只需要在前后加引号即可)
2.必须要掌握的方法
	1.索引取值(起始位置0开始 超出范围直接报错)
     print(s1[0])  # h
     print(s1[-1])  # d  支持负数 从末尾开始
    2.切片操作
     print(s1[1:5])  # 顾头不顾尾 从索引1一直切取到索引4
     print(s1[-1:-5])  # 默认的顺序是从左往右
     print(s1[-5:-1])  # 默认的顺序是从左往右
     3.修改切片方向(间隔)
     print(s1[1:5:1])  # 默认是1
     print(s1[1:5:2])  # 默认是1
     print(s1[-1:-5:-1])
     print(s1[:])  # 不写数字就默认都要
     print(s1[2:])  # 从索引2开始往后都要
     print(s1[:5])  # 从索引0开始往后要到4
     print(s1[::2])
     4.统计字符串中字符的个数
     print(len(s1))  # 10
     5.移除字符串首尾指定的字符
     username = input('username>>>:').strip()
     username = username.strip()
     if username == 'jason':
         print('登录成功')
     res = '  jason  '
     print(len(res))
     print(len(res.strip()))  # 括号内不写 默认移除首尾的空格
     res1 = '$$jason$$'
     print(res1.strip('$'))  # jason
     print(res1.lstrip('$'))  # jason$$
     print(res1.rstrip('$'))  # $$jason
     6.切割字符串中指定的字符
     res = 'jason|123|read'
     print(res.split('|'))  # ['jason', '123', 'read']  该方法的处理结果是一个列表
     name, pwd, hobby = res.split('|')
     print(res.split('|', maxsplit=1))  # ['jason', '123|read']  从左往右切指定个数
     print(res.rsplit('|',maxsplit=1))  # ['jason|123', 'read']  从右往左切指定个数
    7.字符串格式化输出
     format玩法1:等价于占位符
     res = 'my name is {} my age is             {}'.format('jason', 123)
     print(res)
     format玩法2:索引取值并支持反复使用
     res = 'my name is {0} my age is {1} {0} {0}     {1}'.format('jason', 123)
     print(res)
     format玩法3:占位符见名知意
     res = 'my name is {name1} my age is {age1} {name1} {age1} {name1} '.format(name1='jason', age1=123)
     print(res)
     format玩法4:推荐使用(******)
    name = input('username>>>:')
    age = input('age>>>:')
    res = f'my name is {name} my age is {age}'
    print(res)
3.字符串需要了解的方法
    1.大小写相关
     res = 'hElLO WorlD 666'
     print(res.upper())  # HELLO WORLD 666
     print(res.lower())  # hello world 666
    图片验证码:生成没有大小写统一的验证码 展示给用户看
    获取用户输入的验证码 将用户输入的验证码和当初产生的验证码统一转大写或者小写再比对
    
     code = '8Ja6Cc'
     print('展示给用户看的图片验证码', code)
     confirm_code = input('请输入验证码').strip()
     if confirm_code.upper() == code.upper():
         print('验证码正确')
     res = 'hello world'
     print(res.isupper())  # 判断字符串是否是纯大写  False
     print(res.islower())  # 判断字符串是否是纯小写  True
     2.判断字符串中是否是纯数字
     res = ''
     print(res.isdigit())
     guess_age = input('guess_age>>>:').strip()
     if guess_age.isdigit():
         guess_age = int(guess_age)
     else:
         print('年龄都不知道怎么输吗???')
    3.替换字符串中指定的内容
     res = 'my name is jason jason jason jason jason'
     print(res.replace('jason', 'tonySB'))  # my name is tonySB tonySB tonySB tonySB tonySB
    # print(res.replace('jason', 'tonySB', 1))  # my name is tonySB jason jason jason jason  从左往右替换指定个数内容
    4.字符串的拼接
     ss1 = 'hello'
     ss2 = 'world'
     print(ss1 + '$$$' + ss2)
     print(ss1 * 10)
     print('|'.join(['jason', '123', 'read', 'JDB']))
     print('|'.join(['jason', 123]))  # 参与拼接的数据值必须都是字符串
     5.统计指定字符出现的次数
     res = 'hello world'
     print(res.count('l'))
    6.判断字符串的开头或者结尾
     res = 'jason say hello'
     print(res.startswith('jason'))
     print(res.startswith('j'))
     print(res.startswith('jas'))
     print(res.startswith('a'))
     print(res.startswith('son'))
     print(res.startswith('say'))
     print(res.endswith('o'))
     print(res.endswith('llo'))
     print(res.endswith('hello'))
    7.其他方法补充
     res = 'helLO wORld hELlo worLD'
     print(res.title())  # Hello World Hello World
     print(res.capitalize())  # Hello world hello world
     print(res.swapcase())  # HELlo WorLD HelLO WORld
     print(res.index('O'))
     print(res.find('O'))
     print(res.index('c'))  # 找不到直接报错
     print(res.find('c'))  # 找不到默认返回-1
     print(res.find('LO'))  # 3

在这里插入图片描述

列表内置方法及操作

1.类型转换
	list(其他数据类型)
	ps:能够被for循环的数据类型都可以转成列表
 	print(list('hello'))
    print(list({'name': 'jason', 'pwd': 123}))
    print(list((1, 2, 3, 4)))
    print(list({1, 2, 3, 4, 5}))
    
2.需要掌握的方法
	11 = [111, 222, 333, 444, 555, 666, 777, 888]
    1.索引取值(正负数)
     print(l1[0])
     print(l1[-1])
     2.切片操作    与字符串讲解操作一致
     print(l1[0:5])
     print(l1[:])
    3.间隔数 方向  与字符串讲解操作一致
     print(l1[::-1])
    4.统计列表中数据值的个数
     print(len(l1))  # 8
    5.数据值修改
     l1[0] = 123
     print(l1)
    6.列表添加数据值
     方式1:尾部追加数据值
     l1.append('干饭')
     print(l1)  # [111, 222, 333, 444, 555, 666, 777, 888, '干饭']
     l1.append(['jason', 'kevin', 'jerry'])
     print(l1)  # [111, 222, 333, 444, 555, 666, 777, 888, ['jason', 'kevin', 'jerry']]
     方式2:任意位置插入数据值
     l1.insert(0, 'jason')
     print(l1)
     l1.insert(1, [11, 22, 33, 44])
     print(l1)  # [111, [11, 22, 33, 44], 222, 333, 444, 555, 666, 777, 888]
     方式3:扩展列表 合并列表
     ll1 = [11, 22, 33]
     ll2 = [44, 55, 66]
     print(ll1 + ll2)  # [11, 22, 33, 44, 55, 66]
     ll1.extend(ll2)  # for循环+append
     print(ll1)  # [11, 22, 33, 44, 55, 66]
     for i in ll2:
         ll1.append(i)
     print(ll1)
    7.删除列表数据
     方式1:通用的删除关键字del
     del l1[0]
     print(l1)
     方式2:remove
     l1.remove(444)  # 括号内填写数据值
     print(l1)
     方式3:pop
     l1.pop(3)  # 括号内填写索引值
     print(l1)
     l1.pop()  # 默认尾部弹出数据值
     print(l1)
     res = l1.pop(3)
     print(res)  # 444
     res1 = l1.remove(444)
     print(res1)  # None
     8.排序
     ss = [54, 99, 55, 76, 12, 43, 76, 88, 99, 100, 33]
     ss.sort()  # 默认是升序
     print(ss)
     ss.sort(reverse=True)
     print(ss)  # 改为降序
     9.统计列表中某个数据值出现的次数
     print(l1.count(111))
    10.颠倒列表顺序
     l1.reverse()
     print(l1)

可变类型与不可变类型

 s1 = '$$jason$$'
 l1 = [11, 22, 33]
 s1.strip('$')
 print(s1)  # $$jason$$
字符串在调用内置方法之后并不会修改自己 而是产生了一个新的结果
如何查看调用方法之后有没有新的结果 可以在调用该方法的代码左侧添加变量名和赋值符号
    res = s1.strip('$')
 ret = l1.append(44)
 print(l1)  # [11, 22, 33, 44]
 print(ret)  # None
列表在调用内置方法之后修改的就是自身 并没有产生一个新的结果

 可变类型:值改变 内存地址不变
 l1 = [11, 22, 33]
 print(l1)
 print(id(l1))
 l1.append(44)
 print(l1)
 print(id(l1))

 不可变类型:值改变 内存地址肯定变
res = '$$hello world$$'
print(res)
print(id(res))
res.strip('$')
print(res)
print(id(res))

标签:jason,res,s1,字符串,内容,详细,l1,print,今日
From: https://www.cnblogs.com/oiqwyig/p/16742982.html

相关文章

  • Apache Shiro和Spring Security的详细对比
    参考资料:1)ApacheShiroApacheShiro:​​http://shiro.apache.org/​​在Web项目中应用ApacheShiro:​​http://www.ibm.com/developerworks/cn/java/j-lo-shiro/​​Apac......
  • SAP License:ERP实施方案包括哪些内容?
    ERP实施方案决定ERP系统最后是否能够顺利实施并发挥效果。实施方案详备准确,ERP在实施过程中也会更加轻松,减少未知风险的发生概率,是企业建设ERP的重要组成部分。那么,ERP实施......
  • 企业电脑管控软件能够监控哪些内容?
    出于对企业数据安全或日常管理员工工作的效率,现在很多企业都部署了电脑监控软件,相信在部署前都会有一个疑问,电脑监控软件能够到哪些程度和哪些内容?1.网页浏览记录管理后台实......
  • 今日学习Dos命令、计算机语言、jdk1.8安装
    Dos命令#cmd盘符切换将c盘切换到D输入D:#cmd查看当前目录下文件dir#切换目录cdchangedirectory例如E:\>cdF:#清理屏幕cls(clearscreen)#退出终端exit......
  • 3款大屏播放软件,用法很详细,用于大屏幕播放视频和图片
    要在展厅或户外的LED大屏幕上长时间循环播放视频或图片,就需要用到大屏播放软件,笔者整理几款好用的给大家。一、动屏大屏播放软件特点这款软件的特点是配置简单,界面美观,即插......
  • MongoDB 4.4 数据库参数详细说明(二) - 一般参数
    1.connPoolMaxShardedConnsPerHost**作用:**设置用于与分片通信的legacy连接池的最大大小。池的大小不会阻止创建其他连接,但是会阻止连接池保留超出此限制的连接。**默认:**2......
  • FCKEditor粘贴word里图文内容到编辑器中
    ​ 1.编辑器修改(可选)1.1在 ueditor/config.json 中添加代码块    /* 上传word配置 */    "wordActionName":"wordupload",/* 执行上传视频的action......
  • 利用sed 截取两行特定内容之间数据
    ###1、数据#catfile.log11111111122222222000000003333333344444444000000005555555566666666000000007777777788888888999999992、第一种:(包含分割行......
  • 文字内容适配
    //缩放指令importVuefrom"vue";functiontransformScale(el,options){const{target="width",origin="topleft"}=options;Vue.nextTick(()=>{......
  • vi编辑器中:wq 、:wq!、:x、:q、:q!的详细区别
    下面的命令只是在vi编辑命令中使用`:wq`和`:wq!`的区别如下:`:x`和`:wq`的区别如下:`:q`和`:q!`的区别如下: 下面的命令只是在vi编辑命令中使用:wq:表示保......