標籤:統計 pre reverse move 產生 定義 extend enumerate 清空
需求:可依次選擇進入各子功能表可從任意一層往回退到上一層可從任意一層退出程式所需新知識點:列表、字典
menu = {
‘北京‘:{
‘海澱‘:{
‘五道口‘:{
‘soho‘:{},
‘網易‘:{},
‘google‘:{}
},
‘中關村‘:{
‘愛奇藝‘:{},
‘汽車之家‘:{},
‘youku‘:{},
},
‘上地‘:{
‘百度‘:{},
},
},
‘昌平‘:{
‘沙河‘:{
‘老男孩‘:{},
‘北航‘:{},
},
‘天通苑‘:{},
‘回龍觀‘:{},
},
‘朝陽‘:{},
‘東城‘:{},
},
‘上海‘:{
‘閔行‘:{
"人民廣場":{
‘炸雞店‘:{}
}
},
‘閘北‘:{
‘火車戰‘:{
‘攜程‘:{}
}
},
‘浦東‘:{},
},
‘山東‘:{},
}
current_layer = menu
last_layer = [ ]
while True :
for i in current_layer :
print(i)
choice = input("輸入你的地點:")
if choice in current_layer :
last_layer.append(current_layer) #儲存當前層
print(current_layer)
current_layer = current_layer[choice]
elif choice == ‘b‘ or choice == ‘B‘ :
if len(last_layer) != 0 :
current_layer = last_layer.pop() #刪除最後一層
else :
print(‘已經是最頂層‘)
elif choice == ‘q‘ or choice == ‘Q‘ :
print(‘退出選擇‘)
break
else :
print(‘輸入正確的地點‘)
PS:這個怎麼定義成函數實現呢?待後續修改
1.列表
列表是一個資料的集合,集合內可以放任何資料類型,可對集合進行增刪改查;
name=[‘a‘,‘b‘,‘c‘,‘d‘,‘f‘,‘d‘,‘g‘]
1.查詢元素 name[0]通過索引找到第一個元素 name[-1]z找最後一個元素 name[-2]倒數第二個元素 name.index(‘d‘)返回指定元素的索引值,從左右尋找,找到第一個匹配的; name.count(‘d‘)統計元素d的個數; 2.切片 name[0:3] 取0-2個元素,即前三個,切片顧頭不顧尾 name[:3]取前三個 name[-5:]取後五個 name[::]取全部元素 name[:5:2] 取1 、3、5個; 2為步長;每隔2個取一個元素; 3.增加 name.append(‘haha’) 末尾追加一個元素haha 4.插入 name.insert(0,‘abd‘) 位置0插入元素abd name.insert(2,‘aa‘) 位置2插入元素aa 5.修改 n[3] = ‘hello‘ 第四個元素修改為hello 6.刪除 name.pop 刪除最後一個 name.remove(‘a‘) 刪除元素a,從左往右,刪除第一個元素a del name[2] 刪除索引為2的元素;(del是一個全域的刪除命令,可以刪除所有,包括變數等) del name[2:4] 刪除索引2-3的元素 7.迴圈 L2 = [‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘] for i in L2 : print(i) 將L2列表中的每個值賦值給變數i,列印出每個i的值; range(10) 產生一個0到9的列表 for i in range(10) 8.排序 name.sort() 對name按照ASCII從大到小進行排序,排序後再查看列表; name name.reverse() 將列表name倒敘 9.合并列表 name+name1 將name和name1列表合并 name.extend(name1) 將列表name擴充 10.清空列表 name.clear() 清空name列表 11.name1=name name1=name 將name賦值給name1,name列表修改後,name1的資料會同步 12.copy name1=name.copy() #淺copy import copy #深copy,匯入python的工具箱 name1=name.deepcopy(name) 13.enumerate(name) #枚舉
2.字典
字典是無序的;
dic={‘k1‘:‘v1‘,‘k2‘:‘v2‘ }
修改
dic[‘k1‘]=2 #修改
dic[‘k3‘]=‘v3‘ #增加
3.元組
tuple = (‘a‘,‘b‘,‘c‘)
元組不可修改
python資料類型