数据类型小结(各数据类型常用操作) 一.数字/整型int
int()强行转化数字
二.bool类型False&Truebool()强行转化布尔类型.
0,None,及各个空的字符类型为False.其余均为Ture.
三.字符串str
str()强行转化字符串
#列表转化字符换 nums = [11,22,33,44] for a in range(0,len(nums)): nums[a] = str(nums[a]) result = \'\'.join(nums) print(result)
.upper()转化大写
name = \'abc\' new_name = name.upper() print(new_name)
.lower()转化小写
name = \'ABC\' new_name = name.lower() print(new_name)
.replace()替换
message = input(\'请输入"大傻逼"\') new_mes = message.replace(\'傻逼\',\'**\') print(new_mes) #.replace(\'原字符\',\'替换字符\',\'替换个数\')
.strip()去首尾空格
name = \' abc \' new_name = name.strip() print(new_name) #.rstrip()去除右侧空格 .lstrip()去除左侧空格
.split()分割
name = \'abcdefg\' new_name = name.split(\'d\') print(new_name) #.split(\'分割点\',分割次数)
.isdecimal()判断是否可以转化位数字
while True: num = input(\'请输入内容:\') num1= num.isdigit() #print(num1) 数字的话输出True,非数字输出FALSE if num1: print(\'你输入正确\') break else: print(\'请输入数字\')
.startswith() 判断是否以()开头,输出值为bool类型
name = \'bigox\' print(name.startswith(\'big\'))
endswith() 判断是否以()结尾,输出值为bool类型 同.startswith()用法相同
.format()格式(同字符串格式化)
name = \'我叫:{0},年龄:{1}\'.format(\'bigox\',24) print(name)
.encode() :编码转换
name = \'刘\' #解释器读取到内存后,按照unicode编码存储:8字节. print(name.encode(\'utf-8\')) #转化为utf-8编码
.join()循环每个元素,并在元素之间加入连接符.
name = \'bigox\' new_name = \'_\'.join(name) print(new_name) #输出结果为 b_i_g_o_x 四.列表list
列表转换list()
#列表转化字符换 nums = [11,22,33,44] for a in range(0,len(nums)): nums[a] = str(nums[a]) result = \'\'.join(nums) print(result)
.pop(索引)
a = li.pop(2) #在列表中删除,并将删除的此数据赋值给a
name = [\'bigox\',\'xo\',\'ox\'] name.pop(1) print(name)
del 列表 [索引]
name = [\'bigox\',\'xo\',\'ox\'] del name[0:2] print(name)
.append()列表最后追加元素
lst = ["麻花藤", "林俊杰", "周润发", "周芷若"] print(lst) lst.append("wusir") print(lst)
.insert()在指定的索引位置插入元素
lst = ["麻花藤", "林俊杰", "周润发", "周芷若"] print(lst) lst.insert(1,"wusir") print(lst)
remove()**指定元素删除
name = [\'bigox\',\'xo\',\'ox\'] name.remove(xo) print(name)
.clear()**清空
.extend**()添加
li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] s = \'qwert\' li.extend(s) print(li) #--------------------------- lst = ["王志文", "张一山", "苦海无涯"] lst.extend(["麻花藤", "麻花不疼"]) print(lst)
.reverse()反转
v = [1,2,3,4,5,6] v.reverse() print() #[6, 5, 4, 3, 2, 1]
.sort排序
v = [1,3,7,4,5,6] v.sort() print() #[1, 3, 4, 5, 6, 7] #v.sort() 从小到大排序(默认) #v.sort(reverse=True) 从大到小排序 五.元组tuple
强制转换:
tuple(\'adfadfasdfasdfasdfafd\')
v1 = tuple(\'adfadfasdfasdfasdfafd\') print(v1) # (\'a\', \'d\', \'f\', \'a\', \'d\', \'f\', \'a\', \'s\', \'d\', \'f\', \'a\', \'s\', \'d\', \'f\', \'a\', \'s\', \'d\', \'f\', \'a\', \'f\', \'d\')
tuple([11,22,33,44])
v1 = tuple([11,22,33,44]) print(v1) # (11, 22, 33, 44)
元组子元素不可变,而子元素内部的子元素是可以变的,取决于元素是否为可变对象
元组中如果只有一个元素,一定要添加一个逗号,否者不是元组
六.字典dict
字典键的数据类型不能为list和tuple,值可以为任何类型.
.keys()取键
for i in info.keys(): print(i)
.values()取值
for i in info.values(): print(i)
.items()取键值对
for i in info.items(): print(i)
.get()以键取值,如果键不存在返回原定结果
info = {\'k1\':\'v1\',\'k2\':\'v2\'} a = info.get(\'k1\') print(a) #v1 info2 = [\'11111\'] b = info.get(\'11111\',22222) print(b) #22222
.update()更新_存在覆盖更新,不存在添加
info = {\'k1\':\'v1\',\'k2\':\'v2\'} info.update({\'k1\':\'v0\',\'k3\':\'v3\'}) print(info) #{\'k1\': \'v0\', \'k2\': \'v2\', \'k3\': \'v3\'} 七.集合set
无序,不可重复
在集合中True与数字1重复,False与数字0重复
.add() 添加
info = {\'k1\',\'k2\'} info.add(\'k3\') print(info)
.discard()删除
info = {\'k1\',\'k2\',\'k3\'} info.discard(\'k3\') print(info)
要修改,需要先删除再添加
.clear()清空
.update()
info = {\'k1\',\'k2\'} info.update({\'k1\',\'k3\',\'v3\'}) print(info) #{\'k1\',\'k2\',\'k3\',\'v3\'}
.intersection() 交集
命令后的 () 可以是集合,也可以是列表.
info = {1,2,3} print(info.intersection({1,3,4})) #{1,3}
.union()并集
info = {1,2,3} print(info.union({1,3,4})) #{1,2,3,4}
.difference()差集
info = {1,2,3} print(info.union({1,3,4})) #{2,4}