1 #!/usr/bin/env python 2 # -*- coding:utf8 -*- 3 4 # 一、有兩個列表 5 # l1 = [11,22,33] 6 # l2 = [22,33,44] 7 # a.獲取內容相同的元素列表 8 l1 = [11, 22, 33] 9 l2 = [22, 33, 44] 10 for v in l1 : 11 if v in l2 : 12 print(v) 13 # b.獲取l1中有,l2中沒有的元素列表 14 print("------------------------------------------") 15 for v in l1 : 16 if v not in l2 : 17 print(v) 18 # c.獲取l2中有,l1中沒有的元素列表 19 print("--------------------------------------------") 20 for v in l2 : 21 if v not in l1 : 22 print(v) 23 # d.獲取l1和l2中內容都不一樣的元素 24 # b.c合集 25 26 27 # 二、 用代碼實現,利用下劃線將列表的每個元素拼接成字符串,li = ['alex','eric','Witharush'] 28 print("--------------------------------------------") 29 li = ['alex','eric','Witharush'] 30 s = "_".join(li) 31 print(s) 32 33 34 # 三、有如下列表: 35 # nums = [2,7,11,15,1,8,7], 請找到列表中任意兩個元素相加可以等於9的元素組合,如, [(0,1),(4,5)] 36 print("--------------------------------------------") 37 nums = [2, 7, 11, 15, 1, 8, 7] 38 n = 0 39 li = [] 40 for i in range(len(nums)) : 41 for j in range(len(nums)) : 42 if nums[i] + nums[j] == 9 : 43 li.append((i, j)) 44 print(li) 45 46 47 # 四、寫代碼,有以下列表,按照要求實現每個功能 48 # li = ["Witharush","eric","rain"] 49 # a.計算列表長度並輸出 50 print("--------------------------------------------") 51 li = ["Witharush", "eric", "rain", "aa", "bb", "cc", "dd"] 52 print(len(li)) 53 # b.列表中追加元素"seven",並輸出添加後的列表 54 li.append("seven") 55 print(li) 56 # c.請在列表的第1個位li請在列表的第一個位置插入元素"Tony",並輸出添加後的列表 57 li.insert(0, "Tony") 58 print(li) 59 # d.請修改列表的第2個位置插入元素"Kelly",並輸出添加後的列表 60 li[1] = "Kelly" 61 print(li) 62 # e.請刪除列表中的元素"eric",並輸出修改後的列表 63 li.remove("eric") 64 print(li) 65 # f.請刪除列表中的第2個元素,並輸出刪除的元素的值和刪除元素後的列表 66 v = li.pop(1) 67 print(v, li) 68 # g.請刪除列表中的第3個元素,並輸出刪除元素後的列表 69 li.pop(2) 70 print(li) 71 # h.請刪除列表中的第2至4個元素,並輸出刪除元素後的列表 72 l = li[1:3] 73 for v in l : 74 li.remove(v) 75 print(li) 76 # i.請將列表全部的元素反轉,並輸出反轉後的列表 77 li.reverse() 78 print(li) 79 # j.請使用for,len,range輸出列表的索引 80 for i in range(len(li)) : 81 print(i) 82 # k.請使用enumerate是輸出列表元素和序號(序號從100開始) 83 print(list(enumerate(li, 100))) 84 # l.請使用for循環輸出列表的全部元素 85 for v in li : 86 print(v) 87 88 89 # 五、寫代碼,有以下元祖,按照要求實現每個功能 90 print("----------------------------------------------") 91 tu = ("alex", "eric", "Witharush") 92 # a.計算元祖長度並輸出 93 print(len(tu)) 94 # b.獲取元祖的第二個元素,並輸出 95 print(tu[1]) 96 # c.獲取元祖的第 1-2 個元素,並輸出 97 print(tu[1:2]) 98 # d.請使用for輸出元祖的元素 99 for v in tu : 100 print(v) 101 # e.請使用for,len,range輸出元素的索引 102 for i in range(len(tu)) : 103 print(i) 104 # f.請使用enumerate輸出元祖元素和序號(序號從10開始) 105 print(tuple(enumerate(tu, 10))) 106 107 108 # 六、有以下變量,請實現要求的功能 109 print("--------------------------------------------------") 110 tu = ("Witharush",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44]) 111 # a.講述元祖的特性 112 # 答:不可變類型、其餘和列表相同 113 # b.請問tu變量中的第一個元素"Witharush"是否能夠被修改? 114 # 答:不能夠 115 # c.請問tu變量中的"k2"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素"Seven" 116 # 答:k2對應的是列表類型,能夠被修改 117 tu[1][2]["k2"].append("Seven") 118 print(tu[1][2]["k2"]) 119 # d.請問tu變量中的"k3"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素"Seven" 120 # 答:k3對應元組類型,不可修改 121 122 123 # 七、用1,2,3,4,5,6,7,8 ,8個數,能組成多少個互不相同且無重複的兩位數? 124 li = [] 125 for i in range(1, 9) : 126 j = i 127 for j in range(1, 9) : 128 if i != j: 129 li.append("".join([str(i), str(j)])) 130 print(li) 131 print(len(li)) 132 133 # 八、九九乘法表 134 for i in range(1, 10) : 135 s = "" 136 for j in range(1, i + 1) : 137 s += str(j) + " * " + str(i) + " = " + str((i * j)) + "\t" 138 print(s) 139 140 141 # 九、print用法中的「sep」 、"end" 142 # 答:end:在打印最後放置什麼內容默認是\n因此會換行 143 # sep:鏈接多個values的鏈接符 默認是空格 144 # print("aaa", "ccc", sep="_", end="BBB") 145 # print("aaa", sep="ccc", end="ddd") 146 147 # 十、分頁實現內容 148 # a.經過for循環建立301條數據,數據類型不限,如: 149 # Witharush-1 Witharush1@live.com pwd1 150 # Witharush-2 Witharush2@live.com pwd2 151 # Witharush-3 Witharush3@live.com pwd3 152 # ... 153 # 提示用戶 請輸入要查看的頁碼,當用戶輸出指定頁碼,也顯示指定數據 154 # 注意: 155 # 每頁顯示10條數據 156 # 用戶輸出頁碼是非十進制數字,也提示輸入內容格式錯誤 157 print("--------------------------------------------------") 158 """ 159 while True: 160 user_list = [] 161 for i in range(1,302): 162 temp = { 163 "name": "Witharush" + str(i), 164 "email": "Witharush" + str(i) + "@live.com", 165 "password": "pwd" + str(i) 166 } 167 user_list.append(temp) 168 pageSize = input("請輸入要查看的頁碼:") 169 pageSize = int(pageSize) 170 start = (pageSize - 1) * 10 171 end = pageSize * 10 172 result = user_list[start:end] 173 for item in result: 174 print(item) 175 """ 176 177 # 十一、用python開發程序自動計算方案 178 # 公雞5文錢一隻,母雞3文錢一隻,小雞3只一文錢,用100文錢買100只雞,其 179 # 中公雞,母雞,小雞都必需要有,問公雞,母雞,小雞要買多少隻恰好湊足100問錢? 180 for i in range(1, 20) : 181 for j in range(1, 33) : 182 for g in range(1, 100) : 183 if i + j + g == 100 and 5 * i + 3 * j + g /3 == 100 : 184 print("公雞:" + str(i), "母雞:" + str(j), "小雞:" + str(g))