Python3.6 List內置方法

# List 的內置方法
li = [1, 2, 3, 4]
print(li)
li_1 = list([1, 2, 3, 4])  # 接收一個iterable,可迭代即可
print(li[0])  # 可以使用下標訪問元素

# Demo1 append 從list的尾部添加一個元素
print(li)
li.append("aabb")
print(li)
# [1, 2, 3, 4, 'aabb']

li.append(1234)
print(li)
# [1, 2, 3, 4, 'aabb', 1234]

# Demo2 clear 清空list內所有元素
print(li)
# [1, 2, 3, 4, 'aabb', 1234]

li.clear()
print(li)
# [] 空list

# Demo3 copy 值拷貝(淺拷貝)
l3 = [[1, 2], "aa", [3, 4]]
print(l3)
# [[1, 2], 'aa', [3, 4]]

li = l3.copy()
print(li)
# [[1, 2], 'aa', [3, 4]]

for i in li:
    print(id(i))
# 4326966920
# 4326703824
# 4326967048

for i in l3:
    print(id(i))
# 4326966920
# 4326703824
# 4326967048

# Demo4 count 返回指定字符或者字符串在list內的個數
li.append('aa')
print(li)
# [[1, 2], 'aa', [3, 4]]

print(li.count('aa'))
# 2
print(li.count(123))
# 0

# Demo5 extend 把一個iterable內所有元素加入到list,append是把一個iterable作爲一個元素添加到list
print(li)
# [[1, 2], 'aa', [3, 4], 'aa']

li.extend([1, 2, 3, 4])
print(li)
# [[1, 2], 'aa', [3, 4], 'aa', 1, 2, 3, 4]

# Demo6 index 返回第一個指定元素的下標(第一個出現的)
print(li)
# [[1, 2], 'aa', [3, 4], 'aa', 1, 2, 3, 4]

print(li.index('aa'))
# 1

print(li.index('aa', 2, 6))  # 包含第一個位置,不包含最後一個位置
# 3

# Demo 7 insert 在指定位置前插入數據
li = [1, 2, 3, 4]
print(li)
# [1, 2, 3, 4]

li.insert(2, 999)
print(li)
# [1, 2, 999, 3, 4]

# Demo 8 pop 刪除最後一個元素,並且返回所刪除的元素
# 參數可以指定位置,如果不設置默認爲最後一個元素
print(li)
# [1, 2, 999, 3, 4]

print(li.pop())
# 4

print(li)
# [1, 2, 999, 3]

# Demo 9 remove 刪除第一次出現的指定元素,如果找不到,就報錯
print(li)
# [1, 2, 999, 3]

li.remove(999)
print(li)
# [1, 2, 3]

# li.remove('a')
# ValueError: list.remove(x): x not in list

# Demo10 reverse 反轉list的元素
print(li)
# [1, 2, 3]

li.reverse()
print(li)
# [3, 2, 1]

# Demo 11 sort
li = [1, 99, 2, 33, 0, 55, 66]
li.sort()
print(li)
# [0, 1, 2, 33, 55, 66, 99]

li.sort(reverse=True)
print(li)
# [99, 66, 55, 33, 2, 1, 0]

# 假設一個數據,爲姓名,性別,年齡的tuple,我需要按照年齡來排序
# 通過key這個參數設置一個lamda表達式,獲取list每一個元素,然後取出index=2的元素,進行排序
li = [('jack', 'male', 18), ('tom', 'male', 20), ('alice', 'female', 12)]
li.sort(key=lambda x: x[2])
print(li)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章