07

时间:2022-09-29
本文章向大家介绍07,主要内容包括今日内容总结、数据类型内置方法理论、整形内置方法与操作、浮点型内置方法与操作、字符串内置方法与操作、字符串需要了解的方法、列表内置方法与操作、可变类型与不可变类型、使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

今日内容总结

数据类型内置方法理论

借助于编程软件的自动提示,采用句点符快速查看

整形内置方法与操作

1.类型转换(将其他数据类型转换为整型)
	int(其他数据类型)
    注意:浮点型可以直接转换为整形,但字符串需要内部为纯数字才行
    
2.进制数转换
    十进制数转变其他进制
    二进制:print(bin(100))  # 0b1100100    二进制(0b开头)
    八进制:print(oct(100))  # 0o144        八进制(0o开头)
    十六进制:print(hex(100))  # 0x64       十六机制(0x开头)
# 将其他机制转换成十进制
	print(int('0b1100100', 2))
	print(int('0o144', 8))
	print(int('0x64', 16))
# 注意单个括号的话计算机无法识别出是进制数,所以需要我们的备注

3.python自身对数字的敏感极低

浮点型内置方法与操作

1.类型转换
    res = float('13.14')
    print(res,type(res))  
    res = float('55')  # 当变量为整数时,它会自动转化成带有小数点的元素
    print(res,type(res))
# 字符串里面可以允许出现一个小数点 其他都必须是纯数字

字符串内置方法与操作

1.类型转换
	str(其他数据类型)
	# 可以转任意数据类型(只需要在前后加引号即可)
2.必须会的小操作
    1.索引取值
		# print(s1[0])  
    	# print(s1[-1])		(支持倒着来)
  • 切片操作
 # print(s1[1:5])  # 顾头不顾尾 从索引1一直切取到索引4
 # print(s1[-1:-5])  # 默认的顺序是从左往右
 # print(s1[-5:-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])
  • 计算字符串中字符的个数
# print(len(s1))  # 11(空格也算)
  • 移除字符串首尾指定的字符
# 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
    注意:只能移除手尾的字符!
  • 切割字符串中指定的字符
# 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']  从右往左指定个数
  • 字符串格式化输出
#format与占位符不同的用法
1.索引取值并支持反复使用
# res = 'my name is {0} my age is {1} {0} {0} {1}'.format('jason', 123)
# print(res)
2.占位符见名知意
# res = 'my name is {name1} my age is {age1} {name1} {age1} {name1} '.format(name1='jason', age1=123)
# print(res)
3.一个实用小技巧
name = input('username>>>:')
age = input('age>>>:')
res = f'my name is {name} my age is {age}'
print(res)

字符串需要了解的方法

  • 大小写相关 验证码的输入
# res = 'hElLO WorlD 666'
# print(res.upper())  # HELLO WORLD 666
# print(res.lower())  # hello world 666
'''图片验证码:生成没有大小写统一的验证码 展示给用户看
获取用户输入的验证码 将用户输入的验证码和当初产生的验证码统一转大写或者小写再比对
'''
  • 判断字符串中是否为纯数字
# res = ''
# print(res.isdigit())
# guess_age = input('guess_age>>>:').strip()
# if guess_age.isdigit():
#     guess_age = int(guess_age)
# else:
#     print('年龄都不知道怎么输吗???')
  • 替换字符串中指定的内容
# 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  从左往右替换指定个数内容
  • 字符串的拼接
# ss1 = 'hello'
# ss2 = 'world'
# print(ss1 + '$$$' + ss2)
# print(ss1 * 10)
# print('|'.join(['jason', '123', 'read', 'JDB']))
# 参与拼接的数据值必须都是字符串
  • 统计字符串中指定字符出现的次数
# res = 'hello world'
# print(res.count('l'))
  • 判断字符串的开头或者结尾
#res = 'jason say hello'
#print(res.startswith('jason'))
#print(res.startswith('j'))
#print(res.startswith('a'))  # 必须是从左到右的顺序
#print(res.endswith('o'))
  • 其他方式的补充
# res = 'helLO wORld hELlo worLD'
# print(res.title())  # 将所有开头大写
# print(res.capitalize())  # 仅将开始的开头大写
# print(res.swapcase())  # 反转大小写
# print(res.index('c'))  # 找不到直接报错
# print(res.find('c'))  # 找不到默认返回-1(两个寻找的结果不同)
# print(res.find('LO'))  # 3

列表内置方法与操作

1.类型转换
	list(其他数据类型)
	ps:能够被for循环的数据类型都可以转成列表
2.需要掌握的方法(l1='hello world')
	1.索引取值(正负数)
    # print(l1[0])
    # print(l1[-1])
    2.切片操作(与字符串的操作一致)
    # print(l1[0:5])
    # print(l1[:])
    3.间隔数,方向(与字符串的操作一致)
    # print(l1[::-1])
    4.统计列表数据值的个数
    # print(len(l1))
    5.数据值修改
    # l1[0] = 123
    # print(l1)
    6.列表添加数据值
    方式一:从尾部添加数据
    # 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']]
    方式二:从任意位置插入数据值
    # 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]
    方式三:
    # 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.删除列表数据
    方式一:通用的删除关键字del
    # del l1[0]
    # print(l1)
    方式二:remove
    # l1.remove(444)  # 括号内填写数据值
    # print(l1)
    方式三: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)

可变类型与不可变类型

'''
可变类型与不可变类型
    可变类型——列表
值改变 内存地址不变 修改的是本身
    不可变类型——字符串
值改变 内存地址肯定变因为 修改过程产生了新的值
'''
l1 = '***owen***'
print(l1.strip('*'))  # 结果为 owen
print(l1)  # 结果为***owen***
''' 变量没有发生改变,只是产生一个新结果 '''
l2 = [1, 2, 3]
l2.extend([11, 22, 33, 44, 55])  # 结果为None
print(l2)  # 结果为[1, 2, 3, 11, 22, 33, 44, 55]

原文地址:https://www.cnblogs.com/xiaochenxiangchangpang/p/16742365.html