1. 列表
如果想要表示兩個同學 users = "李,李航...".
以後想要表示多個”事物“,可以使用列表。
users = ["李奇","奇",99]
-
公共功能
-
len
users = ["李奇","航",99] val = len(users) print(val) # 3
-
索引
users = ["李奇","航",99] val = users[0] print(val)
-
切片
users = ["李奇","航",99] val = users[0:2]
-
刪除(數字/布林/字串除外)
users = ["李奇","航",99] # 方式一 users.pop(1) print(users) # 方式二: del users[1] print(users)
注意:
- 字串本身不能修改或刪除【不可變型別】 v1 = "alex".upper()
- 列表是可變型別。
-
修改(字串/數字/布林除外)
users = ["李邵奇","奇航",99] users[2] = 66 users[0] = '李傑' users[0][1]
-
步長
users = ["李邵奇","奇航",99] val = users[0:2:2]
-
練習題
""" 實現一個整數加法計算器(兩個數相加): 如:content = input("請輸入內容:") 使用者輸入:5+9或5+ 9或5 + 9(含空白),然後進行分割轉換最終進行整數的計算得到結果。 """ # 思路一: """ content = input('請輸入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] content = content.strip() # [5+9] 或 [5 +9] 或者 [5 + 9] v1 = int(content[0]) v2 = int(content[-1]) v3 = v1 + v2 """ # 思路二: """ content = input('請輸入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] content_len = len(content) index = 0 total = 0 while True: char = content[index] if char.isdigit(): total += int(char) index += 1 if index == content_len: break print(total) """ # 思路三: """ content = input('請輸入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] result = content.split('+') # print(result) # ['55 ', ' 99 '] v1 = int(result[0]) # "55" v2 = int(result[1]) # " 99 " v3 = v1 + v2 print(v3) """
-
for迴圈
""" users = ['李邵','利奇','張三','李子'] for i in users: print(i) """ """ users = ['李邵','利奇','張三','李子'] for i in users: # 第一次迴圈:i=“李邵” print(i) for ele in i: print(ele) """ # 練習題:請透過for迴圈和數字計數器實現:users = ['李邵奇','利奇航','張三丰','李子森'] """ 0 李邵奇 1 利奇航 2 張三丰 3 李子森 """ """ # 方式一 users = ['李邵奇','利奇航','張三丰','李子森'] count = 0 for i in users: print(count,i) count += 1 """ """ # 方式二 users = ['李邵奇','利奇航','張三丰','李子森'] users_len = len(users) # 4 for index in range(0,users_len): # [0,1,2,3] print(index,users[index]) """
-
-
獨有功能
-
append,在列表的最後追加一個元素
users = [] users.append('alex') print(users)
""" 示例一: users = [] while True: name = input('請輸入姓名:') users.append(name) print(users) """ """ 示例二: # 錄入使用者和密碼 users = [] for i in range(0,3): name = input('請輸入使用者名稱和密碼:') users.append(name) print(users) # ['alex,123', 'oldboy,888', 'lishaoqi,123'] # 使用者和密碼校驗 username = input('請輸入要登陸使用者名稱:') password = input('請輸入要登陸密碼:') for item in users: result = item.split(',') # ['alex','123'] user = result[0] pwd = result[1] if user == username and pwd == password: print('登陸成功') break """
-
insert
-
remove
-
pop
-
clear
-
-
總結:
-
增:
- append / insert
-
刪:
- remove / pop / clear / del users[2]
-
改:
- users[3] = "新值"
-
查:
- 索引/切片
-
列表巢狀
users = ["alex",0,True,[11,22,33,"老男孩"],[1,['alex','oldboy'],2,3]] users[0] users[2] users[0][2] users[3] # [11,22,33,"老男孩"] users[3][-1] # "老男孩" users[3][-1][1] # '男' users[3] = 666
-