成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

3-python 元組 字典 集合的操作

CKJOKER / 1868人閱讀

摘要:元組本質(zhì)是一種有序集合和相似元組是不可變的用創(chuàng)建其中類型可以不同如果一個元組中只有一個元素,在這個元素后面加一個逗號來消除歧義修改元組表面上看,的元素改變了,但實際上變得不是的元素,是的元素刪除被直接刪除數(shù)據(jù)類型轉(zhuǎn)換字典字典中的必須唯一值必

元組 tuple

本質(zhì)是一種有序集合

和list相似

元組是不可變的

用()創(chuàng)建

其中類型可以不同

如果一個元組中只有一個元素,在這個元素后面加一個逗號, 來消除歧義tuple5 = (100,)

修改元組

tuple13 = (1, [100, 200, 300, 400], 3)
print(tuple13)
tuple13[1][2] = 666
print(tuple13) # 表面上看,tuple的元素改變了,但實際上變得不是tuple的元素,是list的元素

刪除

del tuple1 #被直接刪除

數(shù)據(jù)類型轉(zhuǎn)換

tuple(list) list(tuple)

字典

字典中的key必須唯一

key值必須是不可變的數(shù)據(jù)類型:字符串,元組,Number

list可變,不能作為key使用

value為任意數(shù)據(jù)類型,可以重復(fù)

字典的本質(zhì)是一種無序集合

字典的訪問

print(dic1.get("hmm"))
# get獲取字典中的值,如果當前key值不存在,返回None,而常規(guī)訪問會Error

刪除 pop(key)

遍歷

for key in dict1.keys()
for values in dict1.values()
for key, values in dict1.items()

更新 dict1.update(dict2) 將 dict2中的鍵值對 更新到 dict1中

dict與list相比:

dict:1、查找及插入速度塊,不會隨著key及value的增加而變慢
      2、需要占用的內(nèi)存大,內(nèi)存浪費多
list:1、查找及插入速度會隨著數(shù)據(jù)的增加而變慢
      2、需要占用的內(nèi)存小,內(nèi)存浪費少
案例:詞頻統(tǒng)計
提供了下面4個方法,個中優(yōu)劣,自行體會。
items = ["bobby", "bobby", "kate", "tom","tom","tom","tom"]
dict1 = {}

for item in items:
     if item not in dict1:
         dict1[item] = 0
     dict1[item] += 1
print(dict1)

for item in items:
    dict1.setdefault(item,0)
    dict1[item] += 1
print(dict1)

for item in items:
    dict1[item] = dict1.setdefault(item,0) + 1
print(dict1)


for item in items:
    try:
        dict1[item] += 1
    except:
        dict1[item] = 1
print(dict1)
set集合

與dict相比,set是一組存儲key的集合,但不存儲value

本質(zhì):一個無序的及元素不重復(fù)的集合

set1 = set([1,2,3,4])
set2 = set([1,2,3,4,2,2,2,3,3,1,4,5,6,2,1]) #重復(fù)會被過濾
print(set2)  # {1,2,3,4,5,6}
       
# tuple
set3 = set((1,2,3,2,1))
print(set3)
       
# dict
set4 = set({"a":1, "b":2, "c":3})
print(set4)  # 只保留字典的key值  # {"a","b","c"}
       
dic5 = {"a":1, "b":2, "c":3}
set5 = set(dic5.values())
print(set5)
       
# 數(shù)據(jù)類型不匹配
# set6 = set(100)
# print(set6)  # TypeError: "int" object is not iterable(迭代器)
# 迭代器就是一種集合數(shù)據(jù)類型

添加數(shù)據(jù)

add() #只添加不可變的數(shù)據(jù)類型 元組字符串數(shù)字
update(iter) # list,tuple,string,dict(只有key)

刪除 remove()

set不支持下標訪問

集合的操作

set10 = set([1,2,3,4,5])
set11 = set([4,5,6,7,8])
# 1、&  交集
set12 = set10 & set11
print(set12)
# 2、|   并集
set13 = set10 | set11
print(set13)
# 3、^   補集
set14 = set10 ^ set11
print(set14)

不同數(shù)據(jù)類型的裝換

list-set
tuple->set
set->list
set->tuple
list->tuple
tuple->list

將list中的重復(fù)數(shù)據(jù)刪除可以用set

list1 = [1,2,3,6,3,2,1,1,1,9]
set1 = set(list1)  # 過濾重復(fù)數(shù)據(jù)
list2 = list(set1)
print(list2)
枚舉遍歷

可以將下標及元素同時遍歷

for i in enumerate(list1):
    print(i)
for index,data in enumerate(list1):
    print(index, data)

set1 = set([1,2,3]) # 讓set也能有下標
for index,data in enumerate(set1):
    print(index, data)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41544.html

相關(guān)文章

  • python3學(xué)習(xí)筆記(2)----python數(shù)據(jù)類型

    摘要:的基本數(shù)據(jù)類型中的變量不需要聲明。在里,只有一種整數(shù)類型,表示為長整型,沒有中的。字符串的截取的語法格式如下變量頭下標尾下標索引值以為開始值,為從末尾的開始位置。列表列表是中使用最頻繁的數(shù)據(jù)類型。注意構(gòu)造包含或個元素的元組的特殊語法規(guī)則。 1、python3的基本數(shù)據(jù)類型 Python 中的變量不需要聲明。每個變量在使用前都必須賦值,變量賦值以后該變量才會被創(chuàng)建。在 Python 中,...

    陸斌 評論0 收藏0
  • Python3基礎(chǔ)數(shù)據(jù)類型

    摘要:列表列表是中使用最頻繁的數(shù)據(jù)類型。列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)。注意構(gòu)造包含或個元素的元組的特殊語法規(guī)則?;竟δ苁沁M行成員關(guān)系測試和刪除重復(fù)元素。以下幾個內(nèi)置的函數(shù)可以執(zhí)行數(shù)據(jù)類型之間的轉(zhuǎn)換。 一、說明 Python 中的變量不需要聲明。每個變量在使用前都必須賦值,變量賦值以后該變量才會被創(chuàng)建。在 Python 中,變量就是變量,它沒有類型,我們所說的類型是變量所指的內(nèi)存中...

    Rindia 評論0 收藏0
  • Python數(shù)據(jù)類型

    摘要:字符串進階原始字符串表示方式及使用如何格式化字符串中文字符串的使用原始字符串表示方式及使用防止轉(zhuǎn)義字符輸入過多而使代碼閱讀性下降注意原始字符串不得以結(jié)尾。列表中可以包含任何數(shù)據(jù)類型,也可包含另一個列表。 1.python的數(shù)據(jù)類型: 字符串 整數(shù) 浮點數(shù) 類型轉(zhuǎn)換 字符串編碼 列表、元組與字典 2.應(yīng)用: 序列及其通用操作 相關(guān)邏輯運算 1.1字符串(Str) 1.Pytho...

    wua_wua2012 評論0 收藏0
  • Python入門-高級數(shù)據(jù)結(jié)構(gòu)

    摘要:下面讓我們一塊來看下的中高級數(shù)據(jù)結(jié)構(gòu)。到現(xiàn)在,我們學(xué)習(xí)了列表元組字典和集合種高級數(shù)據(jù)結(jié)構(gòu)。 < 返回索引頁 高級數(shù)據(jù)結(jié)構(gòu) 列表與元組 什么是列表 列表的操作 什么是元組 元組的操作 字典與集合 字典的定義 字典的操作 集合的定義 集合的操作 序列 序列的通用操作 可變類型和不可變類型 深copy和淺copy 總結(jié) 練習(xí) 參考 高級數(shù)據(jù)結(jié)構(gòu) 我們知道P...

    jayzou 評論0 收藏0
  • python數(shù)據(jù)結(jié)構(gòu)比較

    摘要:列表列表中的每一個元素都是可變的,有序的,可以被查看索引的。字典中的數(shù)據(jù)必須以鍵值對的形式出現(xiàn)鍵不可重復(fù),值可重復(fù)字典中鍵是不可變的,為不可變對象,不能進行修改而值是可以修改的,可以是任何對象。集合中每個元素都是無序的不重復(fù)的任意對象。 列表:list=[val1,val2] 1.列表中的每一個元素都是可變的,有序的,可以被查看索引的。 可變意味著可以對每個元素進行增刪改查的操作,...

    wwolf 評論0 收藏0

發(fā)表評論

0條評論

CKJOKER

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<