day7基础数据类型汇总
1、昨日内容回顾
小数据池: int -5~256 str 特殊字符,*数字20 ascci: 8位 1字节 表示1个字符 unicode: 32位 4个字节 表示1个字符 utf-8: 1个英文 8位, 1个字符 欧洲 16位 两个字节 表示一个字符 亚洲 12位 三个字节 表示一个字符 gbk: 1个英文 8位,1个字节 亚洲 16位 两个字节 表示一个字符 s = 'alex' b = s.encode('utf-8') print(b) #b'alex'
2、基础数据类型汇总补充
查看官方解释

'''
str int
'''
# str
# s = ' '
# # 全部是空格或至少有1个是空格为true
# print(s.isspace())
# int
'''
list:
'''
lis = [11,22,33,44,55]
# # for i in lis:
# # del lis[lis.index(i)]
# for i in range(len(lis)):
# print(i) # i = 0 i = 1 i=2
# print(lis)
# del lis[i]
# print(lis) # [11,22,33,44,55] [22,44,55] [22,44]
#输出值为奇数的
#第一种
# lis = lis[::2]
# print(lis)
#第二种
# ll = []
# for i in lis:
# if lis.index(i) % 2 == 0:
# ll.append(i)
# lis = ll
# print(lis)
# lis = [11,22,33,44,55]
# for i in range(len(lis)-1,-1,-1):
# if i % 2 ==1:
# print(i)
# del lis[i]
# print(lis)
# dic = dict.fromkeys([1,2,3],'春哥')
# print(dic)
# dic = dict.fromkeys([1,2,3],[])
# print(dic) # {1: [], 2: [], 3: []}
# dic[1].append('袁杰')
# print(dic) #{1: ['袁杰'], 2: ['袁杰'], 3: ['袁杰']}
# dic[2].extend('二哥')
# print(dic) #{1: ['二', '哥'], 2: ['二', '哥'], 3: ['二', '哥']}
# l1 = []
# l2 = l1
# l3 = l1
# l3.append('a')
# print(l1,l2,l3)
# dic = {'k1':'v1','k2':'v2','a3':'v3'}
# dic1 = {}
# # for i in dic:
# # if 'k' not in i:
# # dic1.setdefault(i,dic[i])
# # dic = dic1
# # print(dic)
# l = []
# for i in dic:
# if 'k' in i:
# l.append(i)
# for i in l:
# del dic[i]
# print(dic)
#转化成bool值
# 0 '' [] () {} set()
#元祖 如果元祖里面只有一个元素且不加,那此元素是什么类型,就是什么类型。
# tu1 = (1)
# tu2 = (1,)
# print(tu1,type(tu1))
# print(tu2,type(tu2))
tu1 = ([1])
tu2 = ([1],)
print(tu1,type(tu1))
print(tu2,type(tu2))

报错的原因是:
list是动态变化的,当它内部数据发生变化时,它的index长度会随之改变,所以运行会出现index out of range


3、集合
1 ''' 2 集合:可变的数据类型,它里面的元素必须是不可变的数据类型,无序,不重复。 3 {} 4 不可变的数据类型就是可哈希的 5 ''' 6 # set1 = set({1,2,3}) 7 # set2 = {1,2,3,[2,3],{'name':'alex'}} #错的 8 # print(set1,type(set1)) 9 # print(set2) 10 # set1 = {'alex','wusir','ritian','egon','barry'} 11 #add 12 # set1.add('女神经') 13 # print(set1) 14 #update 与list中的extend很像 15 # set1.update('abc') 16 # print(set1) 17 #删除 18 # set1.pop() #随机删除 19 # print(set1.pop()) #有返回值 20 # print(set1) 21 22 # set1.remove('alex') #按元素去删 23 # print(set1) 24 25 #{} set() 26 # set1.clear() #清空 27 # print(set1) #set() 28 29 # del set1 30 # print(set1) 31 32 #查 33 # for i in set1: 34 # print(i)\ 35 36 #集合的其他操作 37 #交集 (& 或者 intersection) 38 # set1 = {1,2,3,4,5} 39 # set2 = {4,5,6,7,8} 40 # print(set1 & set2) # {4, 5} 41 # print(set1.intersection(set2)) # {4, 5} 42 43 #并集 (| 或者 union) 44 # set1 = {1,2,3,4,5} 45 # set2 = {4,5,6,7,8} 46 # print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7,8} 47 # print(set2.union(set1)) # {1, 2, 3, 4, 5, 6, 7,8} 48 49 #差集 (- 或者 difference) 50 # set1 = {1,2,3,4,5} 51 # set2 = {4,5,6,7,8} 52 # print(set1 - set2) # {1, 2, 3} 53 # #set1独有的 54 # print(set1.difference(set2)) # {1, 2, 3} 55 56 #反交集 (^ 或者 symmetric_difference) 57 # set1 = {1,2,3,4,5} 58 # set2 = {4,5,6,7,8} 59 # print(set1 ^ set2) # {1, 2, 3, 6, 7, 8} #去除都有的剩下的 60 # print(set1.symmetric_difference(set2)) # {1, 2, 3, 6, 7, 8} 61 62 #子集与超集 63 # set1 = {1,2,3} 64 # set2 = {1,2,3,4,5,6} 65 # 66 # print(set1 < set2) 67 # print(set1.issubset(set2)) # 这两个相同,都是说明set1是set2子集。 68 # 69 # print(set2 > set1) 70 # print(set2.issuperset(set1)) # 这两个相同,都是说明set2是set1超集。 71 72 #列表去重 73 # li = [1,2,33,33,2,1,4,5,6,6] 74 # set1 = set(li) 75 # print(set1) 76 # li = list(set1) 77 # print(li) 78 79 #frozenset不可变集合,让集合变成不可变类型。 80 s = frozenset('barry') 81 print(s,type(s)) # frozenset({'a', 'y', 'b', 'r'}) <class 'frozenset'>
浙公网安备 33010602011771号