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'>

 

posted @ 2019-03-19 16:21  taoziya  阅读(91)  评论(0)    收藏  举报