第4章 列表
4.11列表的快速生成
#列表快速生成
a = [x**3+100 for x in range(1,11)]
print(a)
b =[[0]*8]*10
print(b)
c = [[l*r for r in range(1,9)]for l in range(1,10)]#行号乘列号
print(c)
d = [x*x for x in range(90,100)if x % 3 == 0]
print(d)
e1 = [x+y for x in '我爱你' for y in '1314']
print(e1)
e2 = [[x+y for x in '我爱你']for y in '1314']
print(e2)
e3 = ['我爱你'[x]+'1314'[x] for x in range(3)]
print(e3)
OUTPUT
[101, 108, 127, 164, 225, 316, 443, 612, 829, 1100]
[[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0,
0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]]
[[1, 2, 3, 4, 5, 6, 7, 8], [2, 4, 6, 8, 10, 12, 14, 16], [3, 6, 9, 12, 15, 18, 21, 24], [4, 8, 12, 16, 20, 24, 28, 32], [5, 10, 15, 20, 25, 30, 35, 40], [6, 12, 18, 24, 30,
36, 42, 48], [7, 14, 21, 28, 35, 42, 49, 56], [8, 16, 24, 32, 40, 48, 56, 64], [9, 18, 27, 36, 45, 54, 63, 72]]
[8100, 8649, 9216, 9801]
['我1', '我3', '我1', '我4', '爱1', '爱3', '爱1', '爱4', '你1', '你3', '你1', '你4']
[['我1', '爱1', '你1'], ['我3', '爱3', '你3'], ['我1', '爱1', '你1'], ['我4', '爱4', '你4']]
['我1', '爱3', '你1']
- bit,byte,K
比特(bit)
比特,计算机专业术语,是信息量单位,由英文BIT音译而来。BIT为Binary digit(二进制数)位的缩写。二进制数的一位所包含的信息就是一比特,如二进制数0100就是4比特。16比特所能表达的最大数字:2**(16-1)
字节(byte)
在二进制数系统中,每个0或1就是一个位(bit),位是数据存储的最小单位。其中8bit就称为一个字节(Byte)。计算机中的CPU位数指的是CPU一次能处理的最大位数。例如32位计算机的CPU一次最多能处理32位数据。
K
计算机中,K表示2的十次方即1024。
第5章 数据类型与名字绑定
5.2集合
5.2.2
my_set = {
x for x in 'abcdefg'}
my_set.add('h')#集合中添加一个元素
#append用于列表,因为append意思为在文章后面增补
print(my_set)
5.2.3集合运算
#集合运算
#子集,超集
s1 = {
x for x in range(512)}
s2 = {
y for y in range(928)}
print(s1.issubset(s2),s2.issuperset(s1))
#交(&)并(|)差(-)补(^)
#补集是指a|b - a&b
s3 = {
1,2,3,4}
s4 = {
3,4,5,6}
print(s3 & s4)
print(s3 | s4)
print(s3