Python開發【第一篇】基礎題目二
阿新 • • 發佈:2018-08-14
循環 bsp 程序 大小 集合 九九乘法 出現 .com 位數
1 列表題
l1 = [11, 22, 33] l2 = [22, 33, 44] # a. 獲取l1 中有,l2中沒有的元素 for i in l1: if i not in l2: print(i) # 11 # b. 獲取l2 中有,l1中沒有的元素列表 for i in l2: if i not in l1: print(i) # 44 # c. 獲取l1 和 l2 中內容相同的元素 for i in l1: if i in l2: print(i, end=" ") # 22 33# d. 獲取l1 和 l2中都互相沒有的元素 for i in l2: if i not in l1: print(i, end=" ") # 44 for i in l1: if i not in l2: print(i, end=" ") # 11
2.有 1,2,3,4,5,6,7,8, 8位數字,輸出兩位元素互不相同的個數
count = 0 a = [1, 2, 3, 4, 5, 6, 7, 8] b = [1, 2, 3, 4, 5, 6, 7, 8] for i in a: forj in b: if i != j: count += 1 print(count) # 56 # 2_1.有 1,2,3,4,5,6,7,8, 8位數字,輸出兩位元素互不相同且數字不重復出現的個數 count = 0 a = [1, 2, 3, 4, 5, 6, 7, 8] b = [1, 2, 3, 4, 5, 6, 7, 8] for i in range(1, len(a) + 1): for j in range(i + 1, len(b) + 1): count += 1 print(count) #28
3. 九九乘法表 正三角
for i in range(1,10): for j in range(1,10): if i>= j: print("%s * %s = %s"%(j,i,i*j),end=‘\t‘) print()
4 九九乘法表 倒三角
for i in range(1,10): for j in range(1,10): if j >= i: print("%s * %s = %s"%(i,j,j*i),end="\t") else: print("%s"%" "*12,end="") print()
5 用Python開發程序自動計算方案
# 公雞5文錢一只,母雞3文錢一只,小雞3只一文錢,用100文錢買100只雞,其中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞,小雞要買多少只剛好湊夠100文錢? for i in range(1, 100 // 5): for j in range(1, 100 // 3): for z in range(1, 100): if i + j + z == 100 and 5*i + 3*j + z/3.0 == 100: print(i,j,z) """ 4 18 78 8 11 81 12 4 84 """
6 用下劃線將列表的每一個元素拼接為字符串 [‘tang‘,‘lao‘,‘er‘]
# 註意: 此方法只適用於元素都是str類型 li = [‘tang‘,‘lao‘,‘er‘] v = "_".join(li) print(v) # tang_lao_er # 6_1 裏面有數字的列表拼接為字符串 li = [‘tang‘,‘lao‘,‘er‘,123] v = "_".join("%s" %i for i in li) print(v) # tang_lao_er_123 # 6_2 裏面有多種數據類型的拼接為字符串 li = [‘tang‘,‘lao‘,‘er‘,[11,22],True] v = "_".join("%s" %i for i in li) print(v) # tang_lao_er_[11, 22]_True
7 有一元組(‘tang‘,‘lao‘,‘er‘) 寫代碼,實現以下功能
tu = (‘tang‘,‘lao‘,‘er‘,) # a. 計算長度 print(len(tu)) # b. 獲取元組的第2-3個元組,並輸出 print(tu[1:3]) # (‘lao‘, ‘er‘) # 註意: 切片索引超出分界大小 不會報錯 print(tu[1:10]) # (‘lao‘, ‘er‘) print(tu[10:]) # () # c. 請使用for輸出元組的元素 for i in tu: print(i,end=" ") # tang lao er print() # d. 請使用for、 len 、range輸出元組的索引 for i in range(len(tu)): print(i,end=" ") # 0 1 2 print() # f. 請使用enumrate輸出元組元素和序號(序號從10開始) for key, value in enumerate(tu,10): print((key,value),end=" ") # (10, ‘tang‘) (11, ‘lao‘) (12, ‘er‘)
8. 有如下變量,請實現要求的功能
tu = ("tang",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44]) # a.元組的特性 #元組不可變類型 不可增刪改 #b. 第一個元素"tang", 是否可修改 # 否 # c "k2"對應的值是什麽類型?是否可改,如果可以,請在其中增加一個元素"san" # 列表類型 可改 tu[1][2]["k2"].append("san") print(tu[1][2]["k2"]) # [‘age‘, ‘name‘, ‘san‘] # d "k2"對應的值是什麽類型?是否可改,如果可以,請在其中增加一個元素"san" # 元組類型 不可改
9. bool值為False的
記法 6+1 6=3+3:3括號 {} [] () 3個基本類型 整型=0、字符串=""、bool= False 1:None
10. 求一列表任意兩個值相加等於9 的元素集合
nums = [2,7,11,25,1,8,7] a = [] for i in nums: for j in nums: if i+j == 9: a.append((i,j)) print(a) # [(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)] # 10_1 求一列表任意兩個值相加等於9 的索引元素集合 nums = [2,7,11,25,1,8,7] a = [] for i in range(len(nums)): for j in range(len(nums)): if nums[i]+nums[j] == 9: a.append((i,j)) print(a) # [(0, 1), (0, 6), (1, 0), (4, 5), (5, 4), (6, 0)]
11 列表反轉
li = [11,22,33,44] li.reverse() print(li) # [44, 33, 22, 11]
12 分頁顯示內容
# a 通過for循環創建302條數據,數據類型不限,如: user_list = [ {‘name‘:‘tang1‘,‘email‘:‘[email protected]‘,‘pwd‘:‘tangpwd1‘} ] for i in range(1,302): temp = {‘name‘:"tang"+str(i),‘email‘:‘[email protected]‘+str(i),‘pwd‘:‘pwd‘+str(i)} user_list.append(temp) # print(user_list) #b 提示用戶輸入頁碼,每頁10行數據,根據用戶輸入的頁碼返回數據 while True: s = input(‘請輸入1,2..30頁碼:‘) s = int(s) start = (s-1) * 10 end = s * 10 result = user_list[start:end] for item in result: print(item)
13 三級菜單
db ={ "北京":{ "昌平":{"沙河":{}}, "海澱":{}, "朝陽":{}, }, "廣州":{ "天河":{"天河城"}, "海珠":{"侖頭村"}, } } path = [] while True: temp = db for item in path: temp = temp[item] # temp 指向最後一個節點 path = ["北京", "昌平","沙河"] print("當前節點的所有子節點:",list(temp.keys())) choice = input(‘1:添加節點 2:查看節點 (Q 退出 | B 返回上一級)\n >>>‘) if choice == "1": name = input("請輸入要插入的節點名稱>>>") if name in temp: print("節點已經存在") else: temp[name] = {} elif choice == "2": name = input("請輸入要查看的節點名稱>>>") if name in temp: path.append(name) else: print("不存在此節點名稱") elif choice.lower() == "b": if path: path.pop() elif choice.lower() == ‘q‘: break else: print(‘輸入錯誤,請重新輸入:‘)
Python開發【第一篇】基礎題目二