码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习 day7 数据类型整理

时间:2017-08-24 21:27:58      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:.so   data   strip   大写   集合   清除   copy   pass   exp   

数据类型整理
   - int
       -bit_length   使用方法   用一个int型例如int后的n   n.bit_length()
       - to_bytes,将数字转换成字节类型: 6表示用多少个人字节表示,little/big,用于指定生成字节的顺序
                result = val.to_bytes(6,little)
                print(result)
       - from_bytes,将字节转换成数字
                result = b\x02\x00\x00\x00\x00\x00
                data = int.from_bytes(result,little)
                print(data)
   - bool
       -True/False   False包括:0 {} [] () None
   -str
       -upper    将所有字母大写   
使用方法:例如字符串变量 n=abc n=n.upper() 结果n=ABC -lower 将所有字母小写 使用方法:例如字符串变量 n=ABC n=n.upper() 结果n=abc -strip 去掉数据的所有空格 使用方法:例如字符串变量 n= ca n=n.strip() 结果n=ca -split 分割 使用方法: 例如字符串变量 n=‘2+3 n=n.split(+) 结果[2,3] 加在变量后,括号内字符串形式写分割依据 -replace 替换 使用方法: 例如字符串变量 n=alex n = n.replace(x,c) replace括号内前面字符串形式的被替换内容,后面是替换内容 -join 迭代 使用方法: 例如li=[a,b,c] v=+ n=li.split(v) 结果a+b+c,v为要使用的迭代符放在split括号内,前面是迭代列表内容 -capitalize 首字母大写 使用方法: 例如字符串变量 n=alex n=n.capitalize() 结果n=Alex 首字母大写 -starswith 是否以···为开头 使用方法:例如字符串变量n=alex if n.starswith(a): print(True) else: print(False) 结果True ,后面括号内是要确定是否是开头的数值 -endswith 是否以···为结尾 使用方法:上同,不过是结尾 -isdecimal 判断是否是数字 使用方法: 例如字符串变量n=’9‘ if n.isdecimal():print(True)else:print(False)结果是True -encode(utf-8或utf-8) # 使用方法:n=’name‘ v=n.encode(‘utf-8‘)把字符串转化成字节,括号内是转换的编码型 -find 寻找 使用方法:寻找索引例如n=alex v=n.find(e) print(v)结果是2,寻找索引后面括号内要寻找的字符串,寻找不到输出-1 -index 寻找 使用方法同上,不过没寻找到报错 -casefold 将所有字母最小写,同lower()使用方法,不过包含小语种 lower()只能英语 -count 用于统计某个字符在字符串中出现的次数 使用方法:n=alel v=n.count(l) print(v)结果是2出现次数两次 除此外还可以规定范围 规定范围方法 n=alel v=n.count(l,0,4)print(v)结果是2 如果是n=alel v=count(l,2,4)print(v) 结果是1 -center 数值在中间向两边填充name = alEalax val = name.center(20,*) print(val) 结果是******alEalax******* 括号内前面是加上数据的总长度后面是填充内容 -ljust 数值在左向右填充 上同 -rjust 数值在右向左填充 上同 -expandtabs 使\t的数据对其 使用方法:name = IDIDIDID\tName\tPasswword\n1\talex\111\n2\teric\t888 val = name.expandtabs(50) print(val)括号内是对齐长度,算上数据本身 -format 格式化四种写法 name = "我叫{0},年龄{1}-{0}-{0}" val = name.format(海娇,45) print(val) 其中{0} format()内第一个数据 可以重复使用 {1}是第二个 依次 name = "我叫{0},年龄{1}-{0}-{0}" val = name.format(*[海角,45]) print(val) 列表要加* name = "我叫{name},年龄{age}" dic = {name:海角,age:18} val = name.format(**dic) print(val) 给定key 也可以重复使用,要用列表要有*一个不行就两个 -format_map 可以不加*用列表字典 -list -append 列表末尾添加新的对象 使用方法:name = [1,2,3,4] name.append(5) print(name) 结果是[1,2,3,4,5] 括号内可以是字符串整数,也可以列表等 -insert 向列表指定位置添加对象 使用方法:name = [1,2,3,4] name.insert[2,5] print(name) 结果是[1,2,5,3,4] -reverse 列表反转 使用方法 : name = [1,2,3] name.reverse() print(name) 结果:[3,2,1] -count 列表中某个东西出现多少次 使用方法:name = [1,2,3] v = name.count(1) print(v)结果是1 -extend 扩展 将可迭代的放进去 相当于批量append
使用方法:name = [1,2] name.extend(礼券) print(name) 结果是[1,2,,‘券] name = [1,2] name.extend(5,6,7) print (name) 结果是[1,2,5,6,7] -index 找某个值索引位置 使用方法:name = [1,2,3] v = name.index(1) print(v) 结果是:0 -pop 默认删除最后一个可以指定索引删除并且获取到值赋值给变量 使用方法:name = [1,2,3] v = name.pop(1) print(v) 结果是:2 name为 [1,3] -remove 移除 使用方法:同上,不过不获取移除的值,直接移除。可按照值移除,不按照索引移除。与pop不同,pop按索引,remove按值,重复只删第一个 -sort 排序 使用方法:name = [3,2,1] name.sort() print(name) 结果是:[1,2,3] 默认括号内为(reverse=False),从小到大是(reverse=True) -copy 深浅拷贝 深拷贝拷贝所有层,浅拷贝只拷贝一层 使用方法:name = [1,2,3] name.copy() 浅拷贝 深拷贝:import copy li = [11,22] li2 = copy.deepcopy(li) -clear 清除 使用方法:name.clear() 列表内内容全部清除 -dict -clear 上同列表 -copy 上同列表 -fromkeys 通过类就可以"."出来的功能,能生成字典 # val = dict.fromkeys([‘k1‘,‘k2‘,‘k3‘],666) # print(val) # val[‘k1‘] = 999 结果:{k1: 666, k2: 666, k3: 666} # val = dict.fromkeys([‘k1‘,‘k2‘,‘k3‘],[]) # val[‘k1‘].append(678) # val[‘k2‘].append(999) # print(val) 结果是:{k1: [678, 999], k2: [678, 999], k3: [678, 999]} # val = dict.fromkeys([‘k1‘,‘k2‘,‘k3‘],[]) # val[‘k1‘].append(666) # val[‘k1‘] = [1,2,3] # print(val) 结果是:{k1: [1, 2, 3], k2: [666], k3: [666]} -get 获取索引值 使用方法:name.get() 括号内第一个可以索引值 ,第二个默认值 -pop 同列表 -items 所有键值对 -keys 所有的key -popitem pop中指定了key popitem出来的值是元素类型 也可以取两个值 -setdefault 添加 列表中有的就不修改,没有就添加 -update 更新 # dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘} # dict类的一个对象 # dic.update({‘k4‘:‘v4‘,‘k2‘:‘v5‘}) # print(dic) 结果:{k1: v1, k2: v5, k4: v4} -set(集合) # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # names.add(‘龙哥‘) # print(names) 又加一次龙哥也不会出现,集合不可以重复 #2. 差集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = [‘小高‘,‘海娇‘,‘小狗‘] # val = names.difference(boys) # names中存在,boys中不存在数据 # print(val) 输出的val是boy中不存在的数据 # val = boys.difference(names) # boys中存在,names中不存在数据 # print(val) 输出的val是names中不存在的数据 # boys.difference_update(names) # boys中存在,names中不存在数据 # print(boys) 输出的boys中的names中不存在的数据 # names.difference_update(boys) # boys中存在,boys中不存在数据 # print(names) 输出的names # 3. 对称差集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = {‘小高‘,‘海娇‘,‘小狗‘} # {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘} # {‘海娇‘,‘小狗‘} # {‘海娇‘,‘小狗‘,‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘} # val = names.symmetric_difference(boys) # print(val) 把同样的去掉,输出的是两个互相不相同的 # names.symmetric_difference_update(boys) # print(names) 同上 # 4. 在集合中删除指定值 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # names.discard(‘龙哥‘) # print(names) 集合中删除指定值的使用 # 5. 求交集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = {‘小高‘,‘海娇‘,‘小狗‘} # # val = names.intersection(boys) # print(val) #求交集,输出两个都有的 # names.intersection_update(boys) 更新了前面的,对name重新赋值了 # print(names) 同上 # 6. 并集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = {‘小高‘,‘海娇‘,‘小狗‘} # # val = names.union(boys) # print(val) 两个都有的都输出 # 7.判断是否无交集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = {‘海娇‘,‘小狗‘} # # 有交集:False # # 无交集:True # val = names.isdisjoint(boys) # print(val) # 8. 子集父集 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = {‘龙哥‘,‘老狗‘} # # 是否是子集 # val = boys.issubset(names) # print(val) # # 是否是父集 # val = names.issuperset(boys) # print(val) # 9. 删除集合元素 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # v = names.pop() # print(v) # names.remove(‘老狗‘) # print(names) # names.discard(‘老狗1‘) # print(names) # 10. 更新 # names = {‘龙哥‘,‘海角‘,‘老狗‘,‘成绩‘,‘小江‘,‘小高‘} # boys = [‘龙哥1‘,‘老狗1‘] # # names.update(boys) # print(names) # 集合 - 元素,不可变 name = {1,alex} name = {1,alex,[11,22,33]} name = {1,alex,{‘‘}} name = {1,alex,()} name = {1,alex,{1,2}}

 

Python学习 day7 数据类型整理

标签:.so   data   strip   大写   集合   清除   copy   pass   exp   

原文地址:http://www.cnblogs.com/gaoshengyue/p/7424992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!