1. 程式人生 > >資料型別之元組,字典,集合

資料型別之元組,字典,集合

tuple 元組就是一個不可變的列表
#======================================基本使用======================================
#1、用途:當我們需要記錄多個同種屬性的值,並且只有讀的需求沒有改的需求時,應該用元組


#2、定義方式:在()內用逗號分隔開多個任意型別的元素
當元組內只有一個元素時,必須加逗號 t=tuple(('egon',))

資料型別轉換:
tuple() 括號內可以使字串 列表 字典 可以進行for迴圈的值

#3、常用操作+內建的方法
#優先掌握的操作:
#1、按索引取值(正向取+反向取):只能取

#2、切片(顧頭不顧尾,步長)

#3、長度
len
#4、成員運算in和not in
判斷元素在不在內

#5、迴圈
for item in t

需要掌握的操作
count:計數


index:
#======================================該型別總結====================================
#存多個值

#有序

#不可變(1、可變:值變,id不變。可變==不可hash 2、不可變:值變,id就變。不可變==可hash)

字典

#======================================基本使用======================================
#1、用途:記錄多個不同屬性的值

#2、定義方式:在{}內用逗號分隔開多個元素,每一個元素都是KEY:VALUE的形式,其中value可以是任意型別,其中key必須是不可變的型別(通常是str型別)

資料型別轉換:dict
li=[('name','egon'),('age',18),('gender','male')]
dict(li)

#3、常用操作+內建的方法
#優先掌握的操作:
#1、按key存取值:可存可取
dic={'name': 'july', 'age': 180, 'gender': 'male'}
print(id(dic))
print['name']='JULY'
print(id(dic))
如果key不存在則新增一組key:value
#2、長度
len
#3、成員運算in和not in
判斷的是字典的key

#4、刪除
del dic['name']

dic.popitem()返回一個 隨機刪除

dic.pop()返回value 指定刪除
#5、鍵keys(),值values(),鍵值對items()
keys 只取key
values 只取value
items 取key:value
#6、迴圈

dic.get:傳key得到value,如果key不存在 不會報錯

dic.fromkeys():
dic={}.fromkeys(li,None)
print(dic)

dic.update()

dic.setdefault():執行完畢後是為了保證字典中必須有這麼一個K
字典中沒有‘height'這個鍵,則新增 如果有’name‘這個鍵,不修改字典
返回key對應的value 如果存在值 則返還原有key對應的value
#======================================該型別總結====================================
#存多個值

#無序

#可變(1、可變:值變,id不變。可變==不可hash 2、不可變:值變,id就變。不可變==可hash)

集合set
#======================================基本使用======================================
#1、用途:
1.1 做關係運算
1.2 去重
如果去重的物件都是不可變型別並且不要求結果跟原來的順序一致,那麼可以用set來解決

#2、定義方式:在{}內也是用逗號分隔開多個元素,多個元素必須滿足一下條件
2.1 ** 每個元素必須是不可變型別 **
2.2 集合內元素不能重複
2.3 集合無序
s=set()

資料型別轉換
set('hello')
print(s)

#3、常用操作+內建的方法
關係運算
交集 res=a & b
並集 res=a | b
差集 res=a - b (順序有區別)
對稱差集 res= a^b
父集/子集:包含與被包含的關係
s1={1,2,3}
s2={1,2}
res=s1>=s2
res=s1<=s2

s1.add(4) 增加一個元素

s1.update({3,4,5})
pop 隨機刪
remove 指定刪
discard 沒有值不會報錯
#======================================該型別總結====================================
#存多個值

#無序

#可變(1、可變:值變,id不變。可變==不可hash 2、不可變:值變,id就變。不可變==可hash)

布林
在條件判斷中所有的資料都會轉換成布林值
只需記住布林值為假的資料型別即可:0,None,空
print(bool(0))
print(bool(none))
print(bool(''))

整型 浮點型  字串 列表 元組 字典 集合

按存值分
一個:整型 浮點型 字串
多個:列表 元組 字典 集合

按有序分:
有序: 列表 元組
無序: 字典 集合


按可變分
可變:列表 字典 集合
不可變:整型 浮點型 字串 元組