Python學習之路——Python基礎之基本數據類型(列表、元組和字典)
阿新 • • 發佈:2018-11-08
bre mark 有序 數據 str sca 索引 更新 蘋果 基本數據類型
- 數字
- 字符串
- 列表 list
- 元組 tuple
- 字典 dict
- 布爾值 bool
列表和元組
列表:有序,元素可以被修改
元組:
- 書寫格式:元組的一級元素不可被修改,不能被增加或者刪除,一般寫元租的時候,推薦在最後加入‘,‘
- 索引:v = tu[0]
- 切片:v = tu[0:2]
- 可以被for循環,可叠代對象: for item in tu
- 轉換:str <--> list <--> tuple
Tips:元組中嵌套的列表的元素可以被修改
字典
dict:
info = { 1:‘asdf‘, "k1":‘wqwr‘, True:"123", (11,22):123 "kk3":(11.22) }
- 列表不能作為字典的Key,元組可以
- 列表、字典不能作為字典的Key(True代表1,False代表0,註意重復)
- 字典是無序的
- 字典支持del刪除
- 可for循環不可while循環
字典功能
- .fromkeys 根據序列,創建字典,並指定統一的值
dict.fromkeys(["k1",123,"999"],123)
- .get 取字典的值,當key不存在時不會導致報錯,.get會返回None或者指定的值
-
.setdefault 設置值,若已存在,不設置,獲取當前key對應的值;不存在,設置值,獲取當前key對應的值
- .update 更新字典中的值
練習
字典的查找:
#!/usr/bin/env python # -*- coding=utf-8 -*- dic = { u"植物": {u"草本植物": [u"荷花", u"葉子", u"小草", u"菊花", u"蘭花", u"茉莉", u"葫蘆"], u"木本植物": [u"臘梅",u"梅花",u"玉蘭花",u"迎春花",u"榆葉梅",u"楊樹",u"蘋果"], u"水生植物": [u"荷花",u"蘆葦",u"香蒲",u"菇",u"水蔥",u"蘆竹",u"菖蒲",u"蒲葦"] }, u"動物": {u"家禽": [u"小貓",u"小狗",u"小豬",u"蛇",u"小鳥",u"魚",u"老虎",u"獅子"], u"兩棲動物": [u"雨蛙",u"樹蛙",u"蟾蜍",u"大鯢",u"蠑螈",u"蚓螈",u"吻蚓",u"魚螈"], u"哺乳類動物": [u"貘樹懶",u"斑馬",u"狼",u"虎",u"老鼠",u"麋鹿",u"猴子",u"猞猁",u"穿山甲"] } } li = [] bi = [] go = True while go: for i,v in enumerate(dic,1): print i,v li.append(v) scan_1 = input(">>>") while go: for i,v in enumerate(dic[li[scan_1 - 1]],1): print i,v bi.append(v) scan_2 = raw_input(">>>") if scan_2 == "b": break elif scan_2 == "q": go = False break elif scan_2 == "1" or scan_2 == "2" or scan_2 == "3": while go: for i, v in enumerate(dic[li[scan_1 - 1]][bi[int(scan_2) - 1]], 1): print i, v scan_3 = raw_input(">>>>>") scan_3 = str(scan_3) scan_3 = scan_3.lower() if scan_3 == "b": break elif scan_3 == "q": go = False break else: print(u"輸入有誤,請重新輸入") else: print(u"輸入有誤,請重新輸入")
Python學習之路——Python基礎之基本數據類型(列表、元組和字典)