1 (1)过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母 2 l = ['awdasd','qq','a','rrr','aasd','b','l','Neil','Adal','Evan'] 3 lst = [i.upper() for i in l if len(i) >= 3] #先遍历列表拿到每一项 i 然后len(i),知道 i 的长度, 然后判定 i 的长度大于等于3添加到新列表,长度小于 3 的不要 4 print(lst) 5 print([i.upper() for i in l if len(i) >= 3]) #这里就厉害了,直接打印,相当于自动创建新列表 6 7 (2)求(x,y)其中x是0-5之间的偶数,y是0-5之间的奇数组成的元祖列表 8 x = [x for x in range(2,6,2)] 9 y = [y for y in range(1,6,2)] 10 print((x,y)) 11 12 x,y = [x for x in range(2,6,2)],[y for y in range(1,6,2)] # Mr. Zhang 投机的写法,不可取,应该写算法 13 print((x,y)) 14 15 x = [x for x in range(1,5) if x %2 == 0] 16 y = [y for y in range(1,6) if y %2 == 1] 17 print((x,y)) 18 19 x,y = [x for x in range(1,6) if x %2 == 0],[y for y in range(1,6) if y %2 == 1] #这才是正儿八经的写法 20 print((x,y)) 21 22 23 (3)求M中3,6,9组成的列表M = [[1,2,3],[4,5,6],[7,8,9]] 24 M = [[1,2,3],[4,5,6],[7,8,9]] 25 print([m[2] for m in M]) #m[2] 是取m里的,即每一个小列表里面的第二个值 26 27 (4)求出50以内能被3整除的数的平方,并放入到一个列表中。 28 lst = [] #先创建一个新列表,一会把结果存入 29 for i in range(50): #循环,取0-50每一个数字 30 if i % 3 == 0: #让循环的每一个数字整除三,如果余剩零即能被三整除 31 i = i*i #让能被三整除的每一个数字自己乘以自己即平方,二次方 32 lst.append(i) #得出的结果添加到列表中 33 print(lst) #打印列表 34 35 lst = [i*i for i in range(50) if i % 3 == 0] 36 print(lst) 37 38 print([i**2 for i in range(50) if i % 3 == 0]) 39 40 41 (5)构建一个列表:['python1期', 'python2期', 'python3期', 'python4期', 'python6期', 'python7期', 'python8期', 'python9期', 'python10期'] 42 lst = [] #据题意,创建一个新列表以存放数据 43 for i in range(1,11): #循环,取数字1-10 44 lst.append('Python %s 期'% i) #把取到的每一个数字循环添加到句式中,再带入新的列表中 45 print(lst) #打印列表 46 47 lst = ['Python %s 期'% i for i in range(1,11)] 48 print(lst) 49 50 print(['Python %s 期'% i for i in range(1,11)]) 51 52 (6)构建一个列表:[(0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6)] 53 print([(i, i + 1) for i in range(6)]) 54 55 lst = [] 56 for i in range(6): 57 lst.append((i,i+1)) 58 print(lst) 59 60 lst = [(i, i + 1) for i in range(6)] 61 print(lst) 62 63 64 (7)构建一个列表:[0, 2, 4, 6, 8, 10, 12, 14, 16, 18] 65 lst = [] 66 for i in range(0,20,2): 67 lst.append(i) 68 print(lst) 69 70 lst = [] 71 for i in range(20): 72 if i %2 == 0: 73 lst.append(i) 74 print(lst) 75 76 lst = [i for i in range(0,20,2)] 77 print(lst) 78 79 print([i for i in range(20) if i %2 == 0]) 80 81 print([2*i for i in range(10)]) 82 83 (8)有一个列表l1 = ['alex', 'WuSir', '老男孩', '太白']将其构造成这种列表['alex0', 'WuSir1', '老男孩2', '太白3'] 84 l1 = ['alex', 'WuSir', '老男孩', '太白'] 85 print([l1[i]+str(i) for i in range(len(l1))]) 86 87 l2 = [l1[i]+str(i) for i in range(len(l1))] 88 print(l2) 89 90 91 l2 = [] 92 for i in range(len(l1)): 93 l2.append(l1[i]+str(i)) 94 print(l2) 95 96 97 (9)有以下数据类型: 98 x = { 99 'name':'alex', 100 'Values':[{'timestamp':1517991992.94, 101 'values':100,}, 102 {'timestamp': 1517992000.94, 103 'values': 200,}, 104 {'timestamp': 1517992014.94, 105 'values': 300,}, 106 {'timestamp': 1517992744.94, 107 'values': 350}, 108 {'timestamp': 1517992800.94, 109 'values': 280} 110 ],} 111 将上面的数据通过列表推导式转换成下面的类型: 112 [[1517991992.94, 100], [1517992000.94, 200], [1517992014.94, 300], [1517992744.94, 350], [1517992800.94, 280]] 113 114 x = { 115 'name':'alex', 116 'Values':[{'timestamp':1517991992.94, 117 'values':100,}, 118 {'timestamp': 1517992000.94, 119 'values': 200,}, 120 {'timestamp': 1517992014.94, 121 'values': 300,}, 122 {'timestamp': 1517992744.94, 123 'values': 350}, 124 {'timestamp': 1517992800.94, 125 'values': 280} 126 ],} 127 128 print([list(m.values()) for m in x['Values']])
Neil_Python_2018.9.18.作业
猜你喜欢
转载自www.cnblogs.com/wblilei/p/9671227.html
今日推荐
周排行