Python基礎學習二:列表,字典,深拷貝與淺拷貝

④使用pop()方法刪除元素:pop方法用於移出列表中的一個元素(默認是最後一個元素),可以指定元素索引,並且返回該元素的值。

    使用del語句刪除元素:如果知道要刪除的元素在列表中的位置,可使用del語句刪除元素,元素一旦被刪除之後就再也無法訪問。

    使用remove()方法刪除元素:當不知道元素索引,只知道元素值的時候,使用remove()方法刪除元素。

⑤查詢數據

    in(存在),如果存在那麼結果爲true,否則爲false

    not in(不存在),如果不存在那麼結果爲true,否則false

⑥列表函數

    len(list)    返回列表元素個數

list05 = ['jack', 'jane', 'joe', 'black']

 

# 查看列表的長度 返回列表元素

print(len(list05))

    max(list):返回列表元素中的最大值。默認數值型的參數,取最大值。字符型的參數,取字母排序靠後者。

    min(list):返回列表元素中的最小值。默認數值型的參數,取最小值。字符型的參數,取字母排序靠前者。

    list.count(obj):統計某個元素在列表中出現的次數

    extends(list):擴展列表,在一個列表的末尾一次性追加一個新的列表,參數爲一個列表

    list.index(obj):用於從列表中找出某一個值第一個匹配項的索引位置

    list.reverse():反向列表中的元素

    list.sort():對列表進行排序,該方法沒有返回值。更改的是原數組

    list.clear():用於清空列表

    list.copy():複製列表

    列表的切片

a = [1, 2, 3]

b = [11, 22, 33]

c = [111, 222, 333]

 

list01 = [a, b, c]

print(id(list01))

list02 = list01[:]

print(id(list02))

# 查看list01list02

print(list01)

print(list02)

    

    ⑦元組函數

    元組和列表不一樣,元組中的元素值是不允許被單獨修改和刪除的,但是我們可以使用del語句來刪除整個元組。

 

    ⑧字典

    字典是另外一種可變容器類型,且可以存儲任意類型對象。列表元素進行修改的話,通過所以進行修改,如果當前元素的順序放生改變,此時還需要修改索引才能成功完成元素的修改,有沒有辦法,技能存儲多個數據,又能很方便準確的定位元素呢:字典

 dict01 = {'name': 'joe', 'age': '19', 'address': '上海'}

print(dict01)

print(dict01['name'])

    訪問下標['name'],中括號指得是下標而不是列表

    修改字典元素,通過找到指定的KEY進行修改

dict01['name'] = 'jack'

print(dict01)

    追加元素,直接添加一個原字典中沒有的元素

 dict01['hobby'] = '足球'

print(dict01)

    刪除元素也可已刪除整個字典,但此操作危險性較大,推薦清空元素

 dict01 = {'name': 'joe', 'age': '19', 'address': '上海'}

del dict01['address']

print(dict01)

    清空

dict01.clear()

print(dict01)

    獲得,如果字典中有該KEY對應的元素,就輸出原來的,如果沒有則輸出指定的元素,但並不改變原字典中的內容

dict01 = {'name': 'joe', 'age': '19', 'address': '上海'}

print(dict01.get('sex', ''))

print(dict01)

key in dict 如果鍵在字典dict裏返回true,否則返回false

print(dict01.keys())

print(dict01.values())

print(dict01.items())

items返回元組,並將內容全部顯示出來

    ⑨深拷貝和淺拷貝

    可變(mutable)參數和不可變參數(immutable)參數

    Python中string、tuple和number是不可變對象,而dict、list等是可變對象;不可變對象在進行重新賦值的時候,實際上是將原始值丟棄,將變量指向一個新值;可變對象的可變性實質上是指更改可變對象中的子對象,比如list中的item元素的更改。

    淺拷貝:不拷貝子對象(針對子對象中的item),當子對象進行更改的時候,原始對象也會改變。常見操作:列表的切片操作[:]、list()操作、字典的copy()函數、copy()模塊的copy()

    深拷貝:會拷貝子對象,當對原始對象子對象進行更改的時候,原始對象不會改變。常見操作:copy模塊的deepcopy()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章