python基礎02
阿新 • • 發佈:2021-02-19
字典
字典的增刪改查
增加:d[‘name’] = name
刪除: pop()、popitem()、del、clear()
查詢:get()
d = {}
# 增
d['name'] = '老王'
d['age'] = 12
d['school'] = '1中'
d['address'] = 'china'
print(d)
#刪
d.pop('age')
print(d)
d.popitem() #隨機刪除一個鍵值對 字典是無序的
print(d)
del d['name']
print(d)
d = {'name': '老王', 'age' : 12, 'school': '1中', 'address': 'china'}
d.clear() # 全部刪除
print(d)
#查詢
d = {'name': '老王', 'age': 12, 'school': '1中', 'address': 'china'}
name = d['name']
print(name)
age = d.get('age')
print(age)
age = d.get('age1')
print(age) # 不報錯 get當找不到時返回None
#改
d['name']='老劉'
print(d)
輸出結果:
練習:在一個字典中輸入三個鍵值對
d = {}
for i in range(3):
key = input("請輸入三個鍵")
value = input("請輸入三個值")
d[key] = value
print(d)
字典的合併
update
d = {'name': '老王', 'age': '12'}
d1 = {'性別': '女'}
d.update(d1)
print(d)
輸出結果
setdefault
d = {'name': '老王', 'age': '12'}
d.setdefault('name',"老劉")
print (d)
d.setdefault('name1',"老劉")
print(d)
輸出結果:
字典獲取鍵、值、鍵值對及求字典的長度
d.keys() d.values() d.items() d.len()
d = {'name': '老王', 'age': 12, 'school': '1中', 'address': 'china'}
keys = d.keys()
print(keys)
values = d.values()
print(values)
items = d.items()
print(items)
print(len(d))
輸出結果:
字典的遍歷 in 和 not in
d = {'name': '老王', 'age': 12, 'school': '1中', 'address': 'china'}
for i in d:
print(i)
print(d[i])
輸出:
d = {'name': '老王', 'age': 12, 'school': '1中', 'address': 'china'}
for i in d.values()
print(i)
輸出:
d = {'name': '老王', 'age': 12, 'school': '1中', 'address': 'china'}
print('name' in d)
for k,v in d.items():
print(k,v)
輸出:
***能當作字典的鍵: 字串 整數 浮點數 布林 元組
不能的 : 列表 字典
練習:設計一個管理系統可以增刪改查個人資訊
d = [] # 裝所有人的資訊
a = True
while a:
i = int(input("請選擇功能1-增加 2-查詢 3-修改 4-刪除 5-列出所有資訊 6-退出"))
if i == 1:
print("請輸入資訊")
l = {}
name = input("姓名")
age = input("age")
gender = input("性別")
l['name'] = name
l['age'] = age
l['gender'] = gender
print(l)
d.append(l)
elif i == 2:
name = input("要查詢的姓名")
# d=[{},{},{},{}]
flag = False
for d1 in d:
if d1.get('name') == name:
print('姓名:{}\n年齡:{}\n性別:{}\n'.format(name, d1.get('age'), d1.get('gender')))
flag = True
break
if not flag:
print("查無此人")
elif i == 3:
name = input("請輸入要修改的人的姓名")
flag = False
for d1 in d :
if d1.get('name') == name:
while True:
num = int(input("找到此人你要修改什麼 1-姓名 2-年齡 3-性別 4-退出修改"))
if num == 1:
name = input("請輸入修改後的姓名")
d1['name'] = name
elif num == 2:
age = input("請輸入修改後的年齡")
d1['age'] = age
elif num == 3:
gender = input("請輸入修改後的性別")
d1['gender'] = gender
elif num == 4:
break
flag = True
break
if not flag:
print("查無此人")
elif i == 4:
name = input("要刪除的人的姓名")
flag = False
for d1 in d:
if d1.get('name') == name:
d.remove(d1)
flag = True
break
if not flag:
print("系統中沒有這個人")
elif i == 5:
for d1 in d:
print('姓名:{}\n年齡:{}\n性別:{}\n'.format(d1.get('name'), d1.get('age'), d1.get('gender')))
elif i == 6:
break
else:
print("您輸入的數字無對應功能")
***為False的變數
l=[]
d={}
i=""
s=0
print(bool(l))
輸出:False