日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

01.Python基础-3.集合容器

發(fā)布時間:2025/6/17 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 01.Python基础-3.集合容器 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1 列表list

1.1 列表介紹

  • Python內(nèi)置的一種數(shù)據(jù)類型是列表:list。
  • 有序的集合,可隨時添加和刪除其中的元素。
  • 每個元素都分配一個數(shù)字 ——它的位置,或索引。0,1,2,3……
  • 可存放各種類型的數(shù)據(jù)
  • 1.2 定義列表

    列表名 = [值1,值2,值3.......]

    1.3 列表-查 index count len max min

  • 根據(jù)下標查找值 值 = xxx[index]
  • name = ['a', 'b', 'c'] # 下標從0開始 n1 = name[0] # 'a' n2 = name[1] # 'b'
  • 從列表中找出某個值第一個匹配項的索引位置 xxx = 列表.index(值)
  • ''' 通過值獲取下標,只能獲取第一次出現(xiàn)的位置 如果這個值不存在,則報錯 VakueError ''' nums = [1, 11, 88, 43] where = nums.index(88) # 2
  • 統(tǒng)計某個元素在列表中出現(xiàn)的次數(shù) xxx = 列表.count(值)
  • ''' nums.count(),獲取此值在list中的個數(shù) 如果沒有就是0 ''' nums = [1, 11, 88, 43] num = nums.count(999) # 0
  • 查詢列表的長度,元素的個數(shù) xxx = len(列表)
  • # len(列表名)可以獲取集合、字符串的長度 nums = [1, 11, 88, 43] nums_len = len(nums) # 4
  • 查看列表中元素的最大值,最小值 max() min()
  • nums = [1, 11, 88, 43] a = max(nums) # 88 b = min(nums) # 1

    1.4 列表增 append insert extend

  • xxx.append(值)
    作用:新增到末尾
  • nums = [1, 11, 88, 43] nums.append(22) print(nums) # [1, 11, 88, 43, 22]
  • xxx.insert(下標,值)
    作用:插入到指定位置
  • nums = [1, 11, 88, 43] nums.insert(2, 22) print(nums) # [1, 11, 22, 88, 43] nums.insert(-1, 33) # 插入至倒數(shù)第二個的位置 print(nums) # [1, 11, 22, 88, 33, 43]
  • xxx.extend(列表)
    作用:列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。
  • a = ['aa', 'bb'] b = [1 , 2] a.extend(b) print(a) # ['aa', 'bb', 1 , 2]

    1.5 列表-改

    xxx[下標] = 值

    a = ['aa', 'bb'] a[0] = 111 print(a) # [111, 'bb']

    1.6 列表-刪

    1.刪除末尾元素,并返回此元素 xxx.pop()

    ''' 如果不寫下標,刪除最后一個 如果寫下標,就刪除對應下標的內(nèi)容 ''' nums = [110, 120, 119] num = nums.pop() # 119 print(nums) # [110, 120]nums = [110, 120, 119] num = nums.pop(1) # 120 print(nums) # [110, 119]
  • 根據(jù)元素下標刪除 del xxx[下標]
  • # del 刪除指定下標的值,無返回值! nums = [110, 120, 119] del nums(1) print(nums) # [110, 119]
  • 根據(jù)元素的值刪除 xxx.remove(值)
  • # remove()根據(jù)值進行刪除,無返回值! nums = [110, 120, 119] nums.remove(120) print(nums) # [110, 119]

    1.7 列表-判斷

  • in(存在)
  • 如果存在那么結(jié)果為True,否則為False

  • not in(不存在)
  • 如果不存在那么結(jié)果為True,否則False

    1.8 列表-腳本操作

    num1 = [1, 2, 3] num2 = [4, 5, 6] ret = num1 + num2 # [1, 2, 3, 4, 5, 6]num1 = [1, 2, 3] ret = num1 * 2 # [1, 2, 3, 1, 2, 3]

    1.9 列表-排序

  • 反向列表中元素 xxx.reverse()
  • nums = [110, 120, 119] nums.reverse() # [119, 120, 110]
  • 排序 xxx.sort()
  • 1.10 列表-切片

    列表[num1:num2:num3]

    num1,num2都是列表的下標, num3是間隔, 返回一個新的列表

    1.11 遍歷(循環(huán))

    1.12 傳遞

  • 可變的值 list列表
  • 如果這個變量存儲的是可變的值,然后傳遞給另外一個變量,此時變量指向同一塊內(nèi)存空間,然后任意一方做了修改,都會影響這個變量

    比如 在一個酒店中的一個房間居住,只有一臺電視,任何一個人換臺都會影響另一個人

  • 不可變的值 數(shù)字、字符串、bool、None、元組
  • 如果這個變量存儲的是不可變的值,然后傳遞給另外一個變量,此時,二者變量指向同一塊內(nèi)存空間,然后,任何一方做了修改,該變量都會被重新復制,不會影響另一個變量

    比如 在一個酒店中的兩個房間居住,每個房間都有一臺電視,任何一個屋中換臺均不影響他人

    2 元組tuple

  • Python的元組與列表類似,只是一點,元組里的值不能修改。
  • 元組使用小括號,列表使用方括號。
  • 元組的功能 = 列表不修改的功能
  • 3 列表和元素相互轉(zhuǎn)換

  • ls = list(元組)
    元組轉(zhuǎn)列表

  • tu = tuple(列表)
    列表轉(zhuǎn)元組

  • 注意:這兩個方法都是得到一個新的,不會修改原來的

    4 字典dict

    4.1 字典介紹

    Python內(nèi)置了字典,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)存儲,唯一定位一個值,查找速度快。

    4.2 字典定義

  • 格式
  • 字典 = {key1 : value1, key2 : value2 ......}

  • 鍵和值
    • 鍵必須是唯一的,但值則不必
    • 值可以取任何數(shù)據(jù)類型,如字符串,數(shù)字或元組

    4.3 增/改 字典[鍵] = 值

    如果次key不存在,就是往字典里新增一個鍵值對;否則,就是修改

    一個key只能對應一個value,多次對一個key放入value,后面的值會把前面的值覆蓋

    student1 = {'id': 1, 'name': '老王'} # 新增 student1['age'] = 22 print(student1) # {'id': 1, 'name': '老王', 'age': 22} # 修改 student1['id'] = 10 student1['id'] = 7 print(student1) # {'id': 7, 'name': '老王', 'age': 22}

    4.4 刪

  • 字典.pop(鍵)
  • 根據(jù)鍵,刪除指定的值,并將此值返回

  • del 字典[鍵]
  • 根據(jù)鍵,刪除指定的值,無返回值

  • 字典.clear()
  • 清空字典里的鍵值對

    4.5 查

  • 值 = 字典[鍵] 根據(jù)鍵查詢值
  • student1 = {'id': 1, 'name': '老王'} sid = student1['id'] # 1 # 如果鍵不存在,則報錯 KeyError
  • 字典.get(鍵[,默認值]) 如果key不存在,可以返回None,或者自己指定的value
  • student1 = {'id': 1, 'name': '老王'} sid = student1.get('id') # 1sid = student1.get('ids') # Nonesid = student1.get('ids', '未知') # 未知

    4.6 判斷

    key in dict
    如果鍵在字典中存在,返回True
    否則,返回False

    4.7 遍歷(循環(huán))

    使用for循環(huán)遍歷的三種方式

    for key in dict:print('%s:%s'%(key,dict[key]))# dict.keys() 以列表形式返回一個字典所有的鍵 # dict.values() 以列表形式返回一個字典所有的值 for key in dict.keys():print('%s:%s'%(key,dict[key]))# 推薦 # dict.items() 以列表形式返回可遍歷的(鍵, 值) 元組數(shù)組 for k,v in dict.items():print('%s:%s'%(k,v)

    4.8 其他

  • dict.copy()
    • 返回一個新的字典,內(nèi)容一樣,地址不同!!!
  • dict.fromkeys(seq[, val]))
    • 創(chuàng)建一個新字典,以序列 seq 中元素做字典的鍵,val 為字典所有值對應的初始值
    d1 = dict.fromkeys(['a','b','c'],'老王') print(d1) # {'a': '老王', 'b': '老王', 'c': '老王'}
  • dict.setdefault(key, default=None)
    • 和get()類似, 但如果鍵不存在于字典中,將會添加鍵并將值設為default
    • 如果鍵在字典中,返回這個鍵所對應的值。
    • 如果鍵不在字典中,向字典中插入這個鍵,并且以default為這個鍵的值,并返回 default。default的默認值為None
  • dict.update(dict2)
    • 把字典dict2的鍵/值對更新到dict里

    4.9 字典與列表對比

  • 語法上
    • ls = [v1, v2 ...]
    • dict = {k1:v1, k2:v2 ...}
  • 速度上:dict>list
  • 內(nèi)存:list占用相對dict較小
  • 存儲內(nèi)容:都可以存儲任意類型的變量
  • 獲取方式:list-下標 dict-鍵
  • 5 集合set

    set是一個無序,不能重復的集合容器,所以可以用來過濾重復元素。

  • add(obj) 新增
  • remove(obj) 移除
  • | 并集
  • & 交集
    • 差集
  • 列表,元組,字典,集合 的比較

  • list 可變,有序,可重復
  • tuple 將list的[]變成(),不可變,有序,可重復
  • set 可變,無序,不可重復
  • dict 鍵值對,可變
  • list() tuple() set()三者可相互轉(zhuǎn)換

    轉(zhuǎn)載于:https://www.cnblogs.com/cjr0707/p/9694559.html

    《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

    總結(jié)

    以上是生活随笔為你收集整理的01.Python基础-3.集合容器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。