day 06
基本数据类型及内置方法
-
整型与浮点型
# 1.整型 # # 1.1类型转换 # print(int(123)) # 123 # print(int('123')) # 123 # print(int('abc')) # 报错 # print(int([1, 2, 3])) # 报错 # print(int({'name': 'ycc', 'age': 18})) # 报错 # print(int(11.1)) # 11 # print(int('11.1')) # 报错 # # 总结:只有纯数字的字符串类型才能转换成整型 # 1.2进制转换 # print(bin(1217)) # 十进制转二进制 0b10011000001 # print(oct(1217)) # 十进制转八进制 0o2301 # print(hex(12)) # 十进制转十六进制 0xc ps:十六进制中A~F代表数字11~16 # 0b:二进制 0o:八进制 0x:十六进制 # print(int('0b10011000001', 2)) # 二转十 # print(int('0o2301', 8)) # 八转十 # print(int('0xc', 16)) # 十六转十 # 2.浮点型 # print(float(12.17)) # 12.17 # print(float('12.17')) # 12.17 # print(float('abx')) # 报错 # print(float([1,2,3])) # 报错 # print(float({'name':'ycc', 'age':18})) # 报错
-
字符串及内置方法
# 总结常用的 str.内置方法 # 1、索引取值 # 2、切片 # 3、len()取长 # 4、strip() 移除 ''' strip() 移除首尾空字符 strip(*) 移除首尾指定 * 字符 lstrip(#) 移除开头指定 # 字符 rstrip($) 移除结尾指定 $ 字符 ps:中间字符是不能移除的 ''' # 5、split()切割 ''' split() 从左往右切割 rsplit() 从右往左切割 split('*',maxsplit = 2) ps: *为切割字符,切割字符不保留 ,切割后的为列表形式, maxsplit = 2 表示指定切割次数为2次 ''' # 6、type() 判断类型 # 7、upper() 把所有英文字母转换成大写 lower() 把所有英文字母转换成小写 # 8、startswith('a') 判断是否以 a 开头 endswith('a') 判断是否以 a 结尾 # 9、字符串格式化输出 format() # 10、count() 计数 # 11、title() 将所有英文单词首字母改成大写 capitalize() 第一个字母大写 后面统一小写 # 12、isdigit() 判断是否为纯数字 # 13、replace('a', 'b') 全部替换(把 b 替换成 a) replace('a', 'b', 2) 这里 2 表示替换次数 # 14 、'*'.join(列表) 将列表内的元素拼接成字符串 并以 * 隔开() # 15、 isalpha() 判断非数字 特殊符号 # 1、索引 # name = 'hello world' # print(name[0]) # h # # 2、切片 # name = 'hello world' # # print(name[1:3]) # el 左闭右开 # print(name[1:4:2]) # el 这里2表示步长 # print(name[-1:-6:-1]) # dlrow 索引2:-1代表从右往左切 # # 3、len() # name = 'hello world' # print(len(name)) # # 4、strip() # n = ' aa ' # print(n.strip()) # 移除首尾空格 aa # n1 = '**a*' # print(n1.strip('*')) # 移除指定首尾字符* a # print(n1.lstrip('*')) # 移除指定左边字符* a* # print(n1.rstrip('*')) # 移除指定右边字符* **a # n2 = '**aa*aa*a**' # print(n2.strip('*')) #中间的*不可移除 aa*aa*a # 5、split() # res = 'aaa|BBB|CCC' # print(res.split('|')) # ['aaa', 'BBB', 'CCC'] # print(res.split('|',maxsplit=1)) # ['aaa', 'BBB|CCC'] # print(res.rsplit('|',maxsplit=1)) # ['aaa|BBB', 'CCC'] # 6、type() # 7、upper() lower() # res = 'KsssKWWaaa' # print(res.upper()) # KSSSKWWAAA 全部转换成大写 # print(res.lower()) # kssskwwaaa 全部转换成小写 # # 图片验证码校验,忽略大小写 # code = 'aFdEE' # my_code = input('请输入验证码:') # if my_code.upper() == code.upper(): # print('验证码正确') # print(res.isupper()) # 判断是否全为大写 # print(res.islower()) # 判断是否全是小写 # 8、startswith('a') endswith() # res = 'aaccnn' # print(res.startswith('a')) # 判断 a 是否为开头 True # print(res.endswith('n')) # 判断 n 是否为结尾 True # 9、字符串格式化输出 format() # 第一种 与%s一致 按照个数位置 一一传值 # res = 'my name is {} my age is {}' # print(res.format('jason',18)) # 第二种 按照索引取值 可以反复使用 # res = 'my name is {0} my age is {1} {0} {0} {0}' # print(res.format('jason',18)) # 第三种 指名道姓取值 可以反复使用 # res = 'my name is {name} my age is {age} {name} {name} {name}' # print(res.format(name='jason',age=18)) # 10、count() 统计个数 # res = ' a s f fs f sdf dsf f wef ef ewf wf sf ' # print(res.count('s')) # 5个s # print(res.count('f', 2, 39)) # 11个f ,第2个到第39个字符中取 # 11、title() # res = 'my name is ycc' # print(res.title()) # 将所有英文单词首字母大写 My Name Is Ycc # print(res.capitalize()) # 将首字母大写 My name is ycc # 12、isdigit() # 判断是否是纯数字 # guess_age = input('请输入您的年龄>>>:') # # 判断用户输入的是否是纯数字 # if guess_age.isdigit(): # # 将字符串的数字转为整型的数字 # guess_age = int(guess_age) # 暂且忽略 # else: # print('请输入纯数字') # 13、replace() # res = 'my name is ycc ycc ycc' # print(res.replace('ycc', 'xixi')) # my name is xixi xixi xixi 全局替换 # print(res.replace('ycc', 'xixi', 2)) # my name is xixi xixi ycc 局部替换 ,2代表从左至右替换数为2 # 14 、'*'.join(列表) # 将列表中的多个元素拼接成字符串 # res = ['ycc', '鸣人', 'aaa'] # res1 = ['ycc', '鸣人', 'aaa', 123] # print('*'.join(res1)) # 报错 只能是字符串的拼接 # print('*'.join(res)) # ycc*鸣人*aaa 以*隔开,也可替换成其他特殊字符 # 15、 isalpha() # res = 'sdewqe圣诞节卡萨' # print(res.isalpha()) # 判断非数字 特殊符号
-
列表及内置方法
# '列表定义:中括号括起来,由多个元素组成,元素之间由逗号隔开,元素可以是任意数据类型' # 其他数据类型转换成列表型 # # print(type(list(123))) # 不行 # print(type(list('123'))) # print(type(list(['sf1','ss',23]))) # print(type(list({'name':'ycc','age':18}))) # # print(type(list(12.12))) # 不行 # # print(type(list('12.12')))# print(type(list(True))) # 不能 # '''能够支持for循环的数据 都能够被list转换成列表''' # 1、索引取值: # 2、切片: # 3、len()取长 # 4、列表的CURD(增删改查) # 5、统计 # 6、排序 # 1、索引取值 # name_list = ['aaa', 'bbb', 'ccc'] # print(name_list[0]) # aaa # print(name_list[-1]) # ccc # 2.切片 # name_list = ['aaa', 'bbb', 'ccc', 'ddd'] # print(name_list[1:3]) # ['bbb', 'ccc'] 左闭右开 # print(name_list[-1:-4:-1]) # 索引2:-1代表从右往左切 # print(name_list[1:3:2]) # 2代表步长 # # 3、len() # name_list = ['aaa', 'bbb', 'ccc', 'ddd'] # print(len(name_list)) # 4、列表的CURD(增删改查) name_list = ['aaa', 'bbb', 'ccc', 'ddd'] # # 4.1修改 # name_list[0] = 'ycc' # print(name_list) # ['ycc', 'bbb', 'ccc', 'ddd'] # # 4.2尾部添加 # name_list.append('xixi') # print(name_list) # ['aaa', 'bbb', 'ccc', 'ddd', 'xixi'] # # 4.3按索引添加 # name_list.insert(0, 'haha') # print(name_list) # ['haha', 'aaa', 'bbb', 'ccc', 'ddd'] # 4.4扩展列表(将一个列表中的全部元素添加进另一个列表,而不是将这个列表添加进另一个列表) # l = [11, 222, 3, 5, 5, 5, 7] # 复杂:for + append # for i in l: # print(i) # name_list.append(i) # print(name_list) # ['aaa', 'bbb', 'ccc', 'ddd', 11, 222, 3, 5, 5, 5, 7] # 简单: # name_list.extend(l) # print(name_list) # ['aaa', 'bbb', 'ccc', 'ddd', 11, 222, 3, 5, 5, 5, 7] # 4.5删除 # 4.5.1通用删除 # del name_list[1] # print(name_list) # ['aaa', 'ccc', 'ddd'] # 4.5.2指定删除 # name_list.remove('aaa') # print(name_list) # ['bbb', 'ccc', 'ddd'] # 4.5.3 # name_list.pop() # print(name_list) # ['aaa', 'bbb', 'ccc'] 默认弹出尾部元素 # name_list.pop(2) # print(name_list) # ['aaa', 'bbb', 'ddd'] 按照索引弹出元素 # 4.5.4 清空 # name_list.clear() # print(name_list) # [] 情况列表 # 5统计 # l = [2, 3, 5, 6, 6, 77, 33, 27, 4, 777, 345] # print(l.count(7)) # 0 # 6排序 l1 = [22, 33, 11, 99, 88, 77, 66, 44, 55] # 6.1升序 # l1.sort() # print(l1) # [11, 22, 33, 44, 55, 66, 77, 88, 99] # 6.2降序 # l1.sort(reverse=True) # print(l1) # [99, 88, 77, 66, 55, 44, 33, 22, 11] # 6.3倒叙 # l1.reverse() # print(l1) # [55, 44, 66, 77, 88, 99, 11, 33, 22]
-
可变与不可变类型
""" 可变类型 值改变 内存地址不变 不可变类型 值改变 内存地址一定变 """ # 不可变类型 # a = 1 # print(id(a)) # 140736875403024 # a = 2 # print(id(a)) # 140736875403024 # 可变类型 # l1 = [11, 22] # print(id(l1)) # 2133952624128 # l1.append(666) # print(id(l1)) # 2133952624128 # l2 = [22, 11] # print(id(l2)) # 2575971123840 # l3 = [33, 44] # l2.append(l3) # print(id(l2)) # 2575971123840