-
数据类型的内置方法
-
整型与浮点型
===整型的基本使用=== ''' 1.用途 年龄 生日 整数类型 2.定义方式 age = 18 # age = int(18) 3.类型转换 int() 将括号内的数据转成整型,括号内待转换的数据内部只能是纯数字 4.进制转换 print(bin(100)) 将十进制的100转换成二进制对应的数 0b1100100 print(oct(100)) 将十进制的100转换成八进制对应的数 0o144 print(hex(100)) 将十进制的100转换成十六进制对应的数 0x64 0b开头表示二进制数 0o开头表示八进制数 0x开头表示十六进制数 print(int('0b1100100',2)) # 100 int转换成十进制 int('进制转换之后的数',它对应的进制) ''' ===浮点型的基本使用=== ''' 用途 身高 体重 薪资... height = 183.1 # height = float('183.1') height = float('183') # 183.0 浮点型可以转换整型,转换后的数后面会加.0 '''
-
字符串
# 定义:在单引号,双引号,三引号内,由一串字符组成 name = 'hello world!' 1.按照索引取值(正向取+反向取):只能取 '''索引是从0开始的''' print(name[0]) print(name[-1]) # -1表示最后一个元素 # 正数从左往右,负数从右往左 2.切片(顾头不顾尾,步长) '''截取某一段内容''' print(name[1:4]) # 1,2,3 print(name[-1:-5:-1]) # 默认的切片方向都是从左往右 最后加上-1修改成从右往左 print(name[1:2:4]) # 第三个参数表示步长,意思就是间隔多少取一个数 3.长度len '''统计字符串里面的字符个数''' print(len(name)) # 12 空格也算字符 4.成员运算 in 和 not in print('hello' in name) print('jason' not in name) 5.移除指定的首尾字符strip(重点) username = input('username>>>:') if username == 'jason': print('登陆成功') username1 = '$$jason$$' username2 = ' jason ' print(username1.strip('$')) # 默认移除首、尾的所有字符 print(username2/strip()) # 默认移除首、尾的所有空格 username = input('username>>>:') username = username.strip() # 将首尾空格移除 if username == 'jason': print('登陆成功') username = input('username>>>:').strip() # 两步合成一步 # 移除首指定的字符 n1 = '$$jason$$' print(n1.lstrip('$')) # jason$$ left n1 = '##$$jason$$' print(n1.lstrip'##$$') print(n1.rstrip('$')) # $$jason right 6.切分split '''按照指定的字符切割字符串''' res = 'jason|123|read' print(res.split('|')) # ['jeason','123','read'] # 1.指定切割的字符不保留 # 2.切割之后的结构是个列表(重要) print(res.split('|',maxsplit=1)) # ['jason','123|read'] 从左往右切割指定的次数 print(res.rsplit('|',maxsplit=1)) # ['jason','123|read'] 从右往左切割指定的次数 7.循环 for i in name: print(i) # 依次获取字符串内单个单个的字符
稍微不是那么重要的字符串类型
1. 转换字符串 name = 'jason' # str('jason') str可以将其他所有数据类型全部转成字符串 2.字符串英文大小写转换 res = 'My nAmE Is JaSOn 666' print(res.upper()) # 变成大写 'MY NAME IS JASON 666' print(res.lower()) # 变成小写 'my name is jason 666' print(res.isupper()) # 判断这个字符串内部所有英文字母是否是全大写,返回布尔值 print(res.islower()) # 判断这个字符串内部所有英文字母是否是全小写,返回布尔值 3.判断字符串以什么开始或结尾 res = 'jason egon kevin tony' print(res.startswith('jason')) # 判断是否以jason开头,返回布尔值 print(res.endswith('tony')) # 判断是否以tony结尾,返回布尔值 4.format字符串格式化输出 res = 'my name is {} my age is {}' print(res.format('jason',18)) # 输入内容,按照顺序填入大括号,与%s(占位符)方法类似 res = 'my name is {0} my age is {1}{1}{1}' print(res.format('jason',18)) # 输入内容形成索引,按照索引取值,可以反复使用 res = 'my name is {name} my age is {age}' print(res.format(name = 'jason',age = 18)) # 指名道姓取值,也可以反复使用 5.统计字符串中指定字符出现的个数 res = ('asdjhsajduwhasudhasd') print(res.count('a')) # 统计这个字符串里a出现的字数 print(res.count('a',1,10)) # 指定范围统计这个字符串里a出现的字数 6. title 将字符串内所有英文单词首字母大写 res = 'asd rqw fdasd etqaf' print(res.title()) # 输出Asd Rqw Fdasd Etqaf 7. capitalize 将字符串首字母大写,后面统一变小写 res = 'asd rqw fdasd etqaf' print(res.capitalize()) # 输出Asd rqw fdasd etqaf 8.防呆措施 # 判断是否是纯数字 age1 = input('猜年龄>>>') if age1.isdigit(): age1 = int(age1) else: print('请输入纯数字') # 判断是否是非数字和特殊符号 res = 'asdasdaw' print(res.isalpha()) 9.替换 res = 'my name is jason jason jason' print(res.replace('jason','sb')) # 将字符中所有jason替换成sb replace('被替换的字符串','替换成的字符串','需要替换的个数(不填写默认全局替换)') 10.将列表内多个元素拼接成字符串 res = ['jason','egon','tony','kevin'] print('|',join(res)) # 中间的间隔变成|,列表内容拼接成字符串,只能是字符串类型拼接
-
列表
name_list = ['jason','egon','tony'] # name_list = list(['jason','egon','tony']) 支持for循环的数据都能被list转换成列表,字典只转换key 1.索引取值 print(name_list[0]) # 输出 jason 2.切片操作(顾头不顾尾,步长) print(name_list[0:2]) print(name_list[0:2:2]) print(name_list[-1:-3:-1]) 3.统计列表中元素的个数 print(len(name_List)) 4.列表元素的CURD(增删改查) # 改 name_list[1] = 'egon快回来' print(name_list) # 输出 ['jason','egon快回来','tony'] # 末尾追加单个元素 name_list.append('kevin') print(name_list) # 输出 ['jason','egon','tony','kevin'] name_list.append([11,22,33]) print(name_list) # 输出['jason','egon','tony',[11,22,33]] # 插入元素 name_list.insert(0,'jack') print(name_list) # 输出 ['jack','jason','egon','tony'] # 扩展列表 l1 = [11,22,33,44,55,66] name_list.extend(l1) # 等于用for循环批量使用append print(name_list) # 输出 ['jason','egon','tony',11,22,33,44,55,66] # 删 del name_list[1] print(name_list) # 输出 ['jason','tony'] name_list.remove('tony') #指名道姓删除 print(name_list) # 输出 ['jason','egon'] res = name_list.pop() # 默认弹出元素,将尾部值暂时取出 print(name_list) # 输出 ['jason','egon'] print(res) # 输出['tony'] res = name_list.pop(1) # 弹出指定索引位置元素 print(name_list) # 输出 ['jason','tony'] print(res) # 输出 ['egon'] 5.统计 l1 = [11,22,33,3,3,3,5,3,3] print(li.count(3)) # 输出 6 统计列表中某个元素出现的次数 6.清空列表 name_list.clear() print(name_list) # 输出[] 7.列表内容排序 l2 = [11,88,66,44,99,77,55,33,22] l2.sort() # 升序排列 print(l2) # 输出 [11,22,33,44,55,66,77,88,99] l2.sort(reverse=True) # reverse=True 降序排列 print(l2) # 输出 [99,88,77,66,55,44,33,22,11] l2.reverse() # 倒序排列 print(l2) # 输出 [22,33,55,77,99,44,66,88,11]
-
可变类型与不可变类型
''' 可变类型 值改变 内存地址不变 不可变类型 值改变 内存地址一定变 '''