劍指 Offer 32 - III. 從上到下列印二叉樹 III
阿新 • • 發佈:2020-08-13
- Q:什麼是列表
- A:一系列按特定順序排列的元素
#列表建議名稱 names letters digits
phone = ['apple','xiaomi','huawei','vivo']
print(phone)
- Q:訪問列表元素
- A:將該元素的位置告訴python
phone = ['apple','xiaomi','huawei','vivo']
print(phone[0].title())
- Q:索引從0開始
- A:0 1 2 3 ...... -3 -2 -1
phone = ["apple" , 'xiaomi' , 'huawei' , 'vivo'] print(phone[-1].title()) -------------------------------------------------------------------- Vivo
- Q:根據列表中的值來拼接訊息
- A:拼接
phone = ['apple','xiaomi','huawei','vivo']
message = ‘My first phone was a ' + phone[1].title() + '.'
print(message)
--------------------------------------------------------------------
My first phone was a Xiaomi.
- Q:修改列表元素
- A:從新定義列表元素
phone = ['apple','xiaomi','huawei','vivo'] print(phone) phone[0] = 'oppo' print(phone)
- Q:新增列表元素
- A:
- 在列表末尾新增元素 方法.append("xxx")
- 在列表中插入元素 方法.insert(0,'xxx')
#下面建立一個空列表 逐步新增列表元素 phone = [] phone.append('apple') phone.append('xiaomi') phone.append('huawei') print(phone) ----------------------------------------------------------------------------------------------------------------------------------------------------- ['apple','xiaomi','huawei'] #下面是在列表中插入元素的例子 phone = ['apple','xiaomi','huawei'] phone.insert(0,'vivo') print(phone) ----------------------------------------------------------------------------------------------------------------------------------------------------- ['vivo','apple','xiaomi','huawei']
- Q:刪除列表元素
- A:
- 使用del xxx[0]語句永久刪除列表元素
- 使用方法.pop(0)彈出一個元素
- 使用方法.remove('xxx')根據值刪除元素
2與3刪除後的元素可以再次訪問 見例子
#下面使用del語句永久刪除列表元素
phone = ['apple','xiaomi','huawei']
print(phone)
del phone[0]
print(phone)
-----------------------------------------------------------------------------------------------------------------------------------------------------
['apple','xiaomi','huawei']
['xiaomi','huawei']
#下面使用方法.pop()彈出一個元素
phone = ['apple','xiaomi','huawei']
poped_phone = phone.pop()
print(phone)
phone.insert(0,'apple')
poped_phone = phone.pop(-1)
print(phone)
----------------------------------------------------------------------------------------------------------------------------------------------------
['apple', 'xiaomi']
['apple', 'apple']
#下面使用方法.remove()刪除列表元素
phone = ['apple','xiaomi','huawei']
expensive_phone = 'apple'
phone.remove(expensive_phone)
print(phone)
print('Fuck ' + expensive_phone.title() + '!')
#.remove只能刪除列表中的第一個指定的值
- Q:組織列表
- A:
- 按字母順序對列表進行永久性排序 .sort()
- 按字母順序對列表進行臨時性排序 函式sorted() #這是個函
- 倒著永久性地列印列表方法 .reverse()
- 確定列表長度 函式len()
注意 len()這裡統計的是列表中元素的個數
#下面是按字母順序對列表哦進行永久排列
cars = ['bmw','audi','toyota','subaru']
print(cars)
cars.sort()
print(cars)
#下面演示向方法.sort()傳遞引數reverse = True 可以反字母順序排列列表
cars.sort(reverse = True)
print(cars)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
['bmw', 'audi', 'toyota', 'subaru']
['audi', 'bmw', 'subaru', 'toyota']
['toyota', 'subaru', 'bmw', 'audi']
#下面是使用.sorted()函式對列表按字母順序臨時排序
cars = ['bmw','audi','toyota','subaru']
print(cars)
print(sorted(cars))
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
['bmw', 'audi', 'toyota', 'subaru']
['audi', 'bmw', 'subaru', 'toyota']
['bmw', 'audi', 'toyota', 'subaru']
#下面是使用方法.reverse()倒著列印列表 可以再用同樣的方法恢復列表順序
cars = ['bmw','audi','toyota','subaru']
print(cars)
cars.reverse()
print(cars)
#下面是用用函式len()確定列表長度
cars = ['bmw','audi','toyota','subaru']
len(cars)
- Q:避免索引錯誤
- A:索引是從0開始的 python返回的錯誤資訊 IndexError:list index out of range
# 建議
# 嘗試將列表或其長度打印出來