1、 有兩個列表 l1 = [11, 22, 33] l2 = [22, 33, 44] a.獲取內容相同的元素列表 li = []l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1: for v2 in l2: if v1 == v2: li.appe ...
1、 有兩個列表
l1 = [11, 22, 33]
l2 = [22, 33, 44]
a.獲取內容相同的元素列表
li = []
l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1: for v2 in l2: if v1 == v2:
li.append(v1)
print(li)
b.獲取l1中有,l2中沒有的元素列表
li = []
l1 = [11, 22, 33] l2 = [22, 33, 44] for v1 in l1:
if v1 not in l2:
li.append(v1) print(li)
c.獲取l2中有,l1中沒有的元素列表
li = []
l1 = [11, 22, 33] l2 = [22, 33, 44] for v2 in l2: if v2 not in l1:
li.append(v2)
print(li)
d.獲取l1和l2中內容都不同的元素
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v1 in l1: if v1 not in l2: print(v1) for v2 in l2: if v2 not in l1: print(v2)
2、利用下劃線將列表的每一個元素拼接成字元串,li = ['alex','eric','Witharush']
li = ['alex', 'eric', 'Witharush'] print('_'.join(li))
3、有以下列表:
nums = [2,7,11,15,1,8,7]
請找到列表中任意兩個元素相加能夠等於9的元素組合,如,[(0,1),(4,5)]
nums = [2, 7, 11, 15, 1, 8, 7] li = [] for i in nums: for v in nums: if i + v == 9: li.append((nums.index(i), nums.index(v))) print(li)
4、寫代碼,有如下列表,按照要求實現每一個功能
li = ["Witharush", "eric", "rain"]
a.計算列表長度並輸出
print(len(li))
# 結果3 列表長度是指一級元素個數
b.列表中追加元素"seven",並輸出添加後的列表
li = ["Witharush", "eric", "rain"] li.append('seven') print(li)
c.請在列表的第一個位置插入元素"Tony",並輸出添加後的列表
li = ["Witharush", "eric", "rain"] li.insert('Tony') print(li)
d.請修改列表的第2個位置插入元素"Kelly",並輸出添加後的列表
li = ["Witharush", "eric", "rain"] li.insert(1,'Kelly') print(li)
e.請刪除列表中的元素"eric",並輸出修改後的列表
li = ["Witharush", "eric", "rain"] li.remove('eric') print(li)
f.請刪除列表中的第2個元素,並輸出刪除的元素的值和刪除元素後的列表
li = ["Witharush", "eric", "rain"] print(li.pop(1)) print(li)
g.請刪除列表中的第3個元素,並輸出刪除元素後的列表
li = ["Witharush", "eric", "rain"] li.pop(2) print(li)
h.請刪除列表中的第2至4個元素,並輸出刪除元素後的列表
li = ["Witharush", "eric", "rain"] del li[1:3] print(li)
i.請將列表所有的元素反轉,並輸出反轉後的列表
li = ["Witharush", "eric", "rain"] li.reverse() print(li)
j.請使用for,len,range輸出列表的索引
li = ["Witharush", "eric", "rain"]
for i in range(len(li)):
print(i, li[i])
k.請使用enumrate輸出列表元素和序號(序號從100開始)
li = ["Witharush", "eric", "rain"]
for i, v in enumerate(li, 100): print(i, v)
l.請使用for迴圈輸出列表的所有元素
li = ["Witharush", "eric", "rain"] for i in li: print(i)
5、寫代碼,有如下元祖,按照要求實現每一個功能
tu = ('alex', 'eric', 'Witharush')
a.計算元祖長度並輸出
tu = ('alex', 'eric', 'Witharush') print(len(tu))
b.獲取元祖的第二個元素,並輸出
tu = ('alex', 'eric', 'Witharush') print(tu[1])
c.獲取元祖的第 1-2 個元素,並輸出
tu = ('alex', 'eric', 'Witharush') print(tu[0:1])
d.請使用for輸出元祖的元素
tu = ('alex', 'eric', 'Witharush') for i in tu: print(i)
e.請使用for,len,range輸出元素的索引
tu = ('alex', 'eric', 'Witharush') for i in range(0, len(tu)): print(i, tu[i])
f.請使用enumrate輸出元祖元素和序號(序號從10開始)
tu = ('alex', 'eric', 'Witharush') for i, v in tu.enumerate(tu, 10): print(i, v)
6、有如下變數,請實現要求的功能
tu = ("Witharush",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])
a.講述元祖的特性
一級元素不可被修改、被增加或者刪除
b.請問tu變數中的第一個元素"Witharush"是否可以被修改?
不能
c.請問tu變數中的"k2"對應的值是什麼類型?是否可以被修改?如果可以,請在其中添加一個元素"Seven"
列表,可以被修改
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44])
tu[1][2]["k2"].append("Seven")
print(tu)
d.請問tu變數中的"k3"對應的值是什麼類型?是否可以被修改?如果可以,請在其中添加一個元素"Seven"
元組,作為k3的vaule可以被整體替換為(11, 22, 33, "Seven"),不能直接在元組(11, 22, 33)中增加元素"Seven"
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44]) tu[1][2]["k3"] = (11, 22, 33, "Seven") print(tu)
7、用1,2,3,4,5,6,7,8 能組成多少個互不相同且無重覆的兩位數?
n = 0 for i in range(1, 9): for v in range(1, 9): if i != v: n += 1 print(n)
8、九九乘法表
for i in range(1, 10): for v in range(1, i+1): print(str(i) + '*' + str(v) + '=' + str(i*v), end="\t")
print("\n", end="")
'''
結果:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
自己總結:先確定外迴圈的一個i值,遍歷內迴圈v值;然後再迴圈下一個i值,再遍歷內迴圈v值;直到遍歷i值。
'''
9、print用法中的“sep” 、"end"
兩個都是print的參數,step預設值是空格,end預設是換行符\n
10、分頁實現內容
a.通過for迴圈創建301條數據,數據類型不限,如:
Witharush-1 [email protected] pwd1
Witharush-2 [email protected] pwd2
Witharush-3 [email protected] pwd3
...
user_list = [] for i in range(1, 302): temp = {'姓名': 'Gru' + str(i), '郵箱': 'Gru' + str(i) + '@163.com ', '電話': '12312312312' + str(i)} user_list.append(temp) print(user_list)
b.提示用戶 請輸入要查看的頁碼,當用戶輸出指定頁碼,也顯示指定數據
註意:
每頁顯示10條數據
用戶輸出頁碼是非十進位數字,也提示輸入內容格式錯誤
user_list = [] for i in range(1, 302): temp = {'姓名': 'Gru' + str(i), '郵箱': 'Gru' + str(i) + '@163.com ', '電話': '12312312312' + str(i)} user_list.append(temp) print(user_list) while True: s = input('請輸入頁碼:') s = int(s) if s not in range(1, 302//10): print('輸入格式錯誤!') continue n = user_list[(s-1)*10: s*10] for m in n: print(m)
11、用python開發程式自動計算方案
公雞5文錢一隻,母雞3文錢一隻,小雞3只一文錢,用100文錢買100只雞,其
中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞要買多少只剛好湊足100文錢?
for g in range(1, 100//5): for m in range(1, 100//3): for x in range(1, 100): if g*5 + m*3 + x*1/3 == 100 and g + m + x == 100: print(g, m, x)