day07-python中的字典和集合

01-字典(dict)

1肄方、字典是容器類型(序列)赂弓,以鍵值對作為元素(字典里面存的數(shù)據(jù)全是以鍵值對的形式出現(xiàn)的)
格式:{key1: value,key2, value2...}

2鞭呕、鍵值對:鍵:值(key:value)
鍵(key):要唯一撼短,不可變的(數(shù)字踩寇、布爾框沟、字符串和元祖牍氛,推薦使用字符串)晨继,如果出現(xiàn)多個鍵相同的元素,前面的就會被后面的覆蓋搬俊;
值(value):可以是任何類型的數(shù)據(jù)紊扬;

3、字典是可變的(可以進行增刪改操作)唉擂,其操作的數(shù)據(jù)是字典中的值餐屎;

4、字典的查操作
獲取字典的元素對應(yīng)的值
格式:
a玩祟、字典[key]:其中如果key不存在就會報異常腹缩;
b、字典.get(key):其中如果key不存在不會報錯空扎,而是返回None;
c庆聘、遍歷字典:其遍歷的是字典的key值;

5勺卢、字典的修改操作
格式:字典[key] = 新值(key存在)

6伙判、字典的添加操作
格式:字典[key] = 值(key原本不存在于字典中)

7、字典的刪除操作
格式1:del 字典[key]
格式2:字典.pop[key]

02-字典的相關(guān)運算和方法

1黑忱、字典不支持“+”和“*”宴抚;
2勒魔、in和not in :在字典中,是判斷key是否存在菇曲;
3冠绢、len():求字典的長度
4、clear():刪除字典中的所有元素(鍵值對)
5常潮、copy():拷貝字典中的所有元素弟胀,放到一個新的字典中;
6喊式、dict.fromkeys(序列孵户,默認值=None):將序列中的每個值作為key,默認值為valuec創(chuàng)建一個新的字典岔留;
7夏哭、字典.keys():獲取字典中所有的key,以列表的形式返回;
8献联、字典.values():獲取字典中所有的value竖配;
9、字典.items():獲取字典的鍵值對
10里逆、字典.setdefault(key,默認值= none):給字典添加鍵值對进胯;如果本身就存在,這個方法無作為原押;
11胁镐、字典1.update(字典2):將字典2的鍵值對更新到字典1中;如果字典2中的key在字典中是存在的班眯,就用字典2中可以對應(yīng)的值覆蓋字典1中的值希停;如果不存在就添加到字典1中;

03-字典和列表的組合使用

1署隘、什么時候用列表宠能?什么時候用字典?
保存的數(shù)據(jù)是同一類型的時候磁餐,就使用列表违崇;
保存的數(shù)據(jù)不是同一類型的時候,就是用字典诊霹;
實例:

#列表中有字典
student_system = [
    {'name': '001', 'age': 18, 'tel': '234', 'native_place': '成都'},
    {'name': '002', 'age': 18, 'tel': '325', 'native_place': '北京'},
    {'name': '003', 'age': 18, 'tel': '3245', 'native_place': '上海'}


]
#取出第一個學(xué)生的籍貫
print(student_system[0]['native_place'])

#字典中有列表
py_class = {
    'class_name': 'python1806',
    'students': [
        {'name': '001', 'age': '18', 'id': '180601'},
        {'name': '002', 'age': '18', 'id': '180602'},
        {'name': '003', 'age': '18', 'id': '180603'},
    ]
}

#取班級名
print(py_class['class_name'])
#取第3個學(xué)生的名字
print(py_class['students'][2]['name'])

#練習(xí):在班級python1806中添加一個學(xué)生羞延,學(xué)生的信息是輸入的:
# name = input('請輸入姓名:')
# age = int(input('請輸入年齡:'))
# id = input('請輸入學(xué)號:')
# #一個學(xué)生對應(yīng)一個字典
# student = {'name': name, 'age': age, 'id': id}
# #將學(xué)生對應(yīng)的字典添加到列表中
# py_class['students'].append(student)
# print(py_class['students'])

#練習(xí):輸入一個學(xué)生的姓名,根據(jù)輸入的姓名刪除對應(yīng)的學(xué)生
del_name = input('請輸入要刪除的學(xué)生的姓名:')
#遍歷取出每個學(xué)生對應(yīng)的字典
for x in py_class['students'][:]:#涉及到刪除操作脾还,要使用[:]來切片完成拷貝
    
    #判斷學(xué)生姓名是否相等
    if x['name'] == del_name:
        py_class['students'].remove(x)

print(py_class['students'])

04-集合(set)

1伴箩、定義:集合是python中的一種容器類型;無序的鄙漏,可變的嗤谚,值唯一棺蛛;其元素除了可變的類型,其他的基本都行巩步,數(shù)字旁赊、布爾和字符串都是可以的;
格式:集合名 = {元素1椅野,元素2终畅,...}

2、其他數(shù)據(jù)轉(zhuǎn)換成集合時竟闪,自帶去重功能离福;

3、集合中的相關(guān)操作
1)瘫怜、查(獲取集合中的元素)
集合是不能單個獲取其中的某一個元素的
只能通過遍歷來實現(xiàn)查詢术徊;
2)本刽、增(添加元素)
格式1:集合.add(元素)
格式2:集合1.update(集合2):將集合2中的元素添加到集合1中鲸湃;
3)、刪
格式:集合.remove(元素)
集合.clear():刪除所有元素

4子寓、集合相關(guān)的運算
1)暗挑、是否包含:
集合1 >= 集合2:判斷集合1是否包含集合2
集合1 <= 集合2:判斷集合2是否包含集合1
2)、求兩個集合的并集:
集合1 | 集合2
3)斜友、求兩個集合的交集:
集合1 & 集合2
4)炸裆、求兩個集合的差集:
集合1 - 集合2
5)、求兩個集合的補集:
集合1 ^ 集合2

補充:sum()是python中的求序列元素和的內(nèi)置方法鲜屏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末烹看,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子洛史,更是在濱河造成了極大的恐慌惯殊,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件也殖,死亡現(xiàn)場離奇詭異土思,居然都是意外死亡,警方通過查閱死者的電腦和手機忆嗜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門己儒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人捆毫,你說我怎么就攤上這事闪湾。” “怎么了绩卤?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵途样,是天一觀的道長损合。 經(jīng)常有香客問我,道長娘纷,這世上最難降的妖魔是什么嫁审? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮赖晶,結(jié)果婚禮上律适,老公的妹妹穿的比我還像新娘。我一直安慰自己遏插,他們只是感情好捂贿,可當我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著胳嘲,像睡著了一般厂僧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上了牛,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天颜屠,我揣著相機與錄音,去河邊找鬼鹰祸。 笑死甫窟,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蛙婴。 我是一名探鬼主播粗井,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼街图!你這毒婦竟也來了浇衬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤餐济,失蹤者是張志新(化名)和其女友劉穎耘擂,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颤介,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡梳星,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了滚朵。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冤灾。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖辕近,靈堂內(nèi)的尸體忽然破棺而出韵吨,到底是詐尸還是另有隱情,我是刑警寧澤移宅,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布归粉,位于F島的核電站椿疗,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏糠悼。R本人自食惡果不足惜届榄,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望倔喂。 院中可真熱鬧铝条,春花似錦、人聲如沸席噩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽悼枢。三九已至埠忘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間馒索,已是汗流浹背莹妒。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留双揪,地道東北人动羽。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓包帚,卻偏偏與公主長得像渔期,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子渴邦,可洞房花燭夜當晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容