今天是周六,八点钟就到自习室了,背了单词,学了运筹学前几堂课的内容,从基础的地方再巩固,从我的角度去看,这学期含金量最高的课就是运筹学了吧。
今天开始学了第六章——字典,稍微有点绕了,下午精神不是很好,效率就没办法保证,这几天学的知识没有系统的复习与巩固,Python明天暂停一天新知识的学习,明天复习一下这周学的知识,要保持每天都敲代码的习惯,一万行代码的任务一个月随随便便都能敲完吧。
#10.30练习
#字典
alien_0 = {"color":"green","points":5} #字典是一系列的键值对,键值对中间用冒号(:)连接,最简单的字典只有一个键值对
print(alien_0["color"])
print(alien_0["points"])
alien_0 = {"color":"yellow","points":5,"language":"chinese"}
new_points = alien_0["points"]
print(f'You just earned {new_points},good jobs')
#添加键值对
alien_0 = {"color":"blue","points":100}
print(alien_0)
alien_0["x_position"]=0 #添加键值对的时候注意,值放在中括号外面
alien_0["y_position"]=152
print(alien_0)
#创建一个空字典
alien_0 = {}
alien_0["color"]="yellow"
alien_0["points"]=19
print(alien_0)
alien_0={"color":"yellow","points":17}
print(alien_0)
alien_0["color"]="blue" #修改字典中的值
alien_0["points"]="89"
print(f"The alien's color is {alien_0['color']}")
print(alien_0["color"])
alien_0={"x_position":"0","y_position":15,"speed":"medium"}
print(f"Original position:{alien_0['x_position']}")
if alien_0["speed"] == "slow":
x_increment = 1
elif alien_0["speed"] == "medium":
x_increment = 2
else:
x_increment = 3
alien_0["x_position"]=alien_0["x_position"]+x_increment
print(f"New position:{alien_0['x_position']}")
alien_0 = {"color":"yellow","points":17}
del alien_0["color"] #删除键值对(删除的键值对会永远消失)
print(alien_0)
favorite_language = {
"xiaolei" : "chinese",
"xiaoyao" : "japenese", #由多个对象组成的字典,每行前要缩进四个字符
"xiaoli" : "english" #每个键值对每行要用逗号(,)隔开
} #最后一个花括号前面要缩进四个字符
language = favorite_language["xiaolei"].title() #将xiaolei最喜欢的语言赋给变量language
print(f"xiaolei's favorite language is {language}")
print(favorite_language["xiaolei"])
alien_0={"x_position":"0","y_position":15,"speed":"medium"}
print(alien_0["color"]) #我想要color,但字典里没有color,此时就会运行报错
#使用get()来访问值
alien_0={"x_position":"0","y_position":15,"speed":"medium"}
value = alien_0.get("speed","No big value assigned")
value = alien_0.get("color","No big value assigned") #get()的第一个参数用于指定键,第二个参数为指定的键不存在时要返回的值
print(value)
alien_0={"x_position":"0","y_position":15,"speed":"medium"}
value = alien_0.get("color") #get()中没有指定第二个参数且指定的键不存在时,Python将返回None
print(value)
#P88小练习
xiaoma = {
"first_name" : "xiao",
"last_name" : "ma",
"age" : 18,
"city" : "beijing",
}
value = xiaoma.get("gae","go back")
print(value)
xiaoma = {"first_name" : "xiao","last_name" : "ma","age" : 18,"city" : "beijing"}
print(xiaoma["city"])
favorite_numbers = {
"xiaoli": "hahaha",
'xiaoyong': 20,
"xiaohan": 28,
"xiaoye": 85,
}
print(favorite_numbers["xiaoye"])
language = favorite_numbers["xiaoli"].upper()
print(f"xiaoli's favorite language is {language}.")
value = favorite_numbers["xiaoye"]
print(f"xiaoye's favorite language is {value}.")
knowlege={
"列表":"liebiao",
"条件":"tioajian",
}
print(knowlege["列表"])
print(knowlege)
knowlege={
"列表":"liebiao",
"条件":"tioajian",
}
del knowlege['列表']
print(knowlege)
#遍历字典
user_0={
"username":"xiaolei",
"first":"xiao",
"last":"lei"
}
for key,value in user_0.items():
print(key,value)
#items() 函数以列表返回可遍历的(键, 值) 元组。
#将字典中的键值对以元组存储,并将众多元组存在列表中。
#如:
favorite_places = {'XiaoMing': 'TJL','XiaoQiang':'Amercia','Dongsheng':'Japan'}
print("数值:%s" % favorite_places.items())
for key,value in favorite_places.items():
print(key,value)
user_0={
"username":"xiaolei",
"first":"xiao",
"last":"lei"
}
for key,value in user_0.items():
print(f'\nkey:{key}')
print(f'\nvalue:{value}')
favorite_language = {
"xiaolei" : "chinese",
"xiaoyao" : "japenese",
"xiaoli" : "english"
}
for name,language in favorite_language.items(): #遍历每个键值对,将键赋值给name,将值赋值给language.
print(f'{name.title()} is love {language}')
favorite_language = {
"xiaolei" : "chinese",
"xiaoyao" : "japenese",
"xiaoli" : "english"
}
for name in favorite_language:
print(name.title())
favorite_language = {
"xiaolei" : "chinese",
"xiaoyao" : "japenese",
"xiaoli" : "english"
}
for name in favorite_language.keys(): #此处.keys加与不加没什么区别
print(name.title())
favorite_language=["chinese","english","american"]
if "english" in favorite_language:
print(f"Yes,I want to {favorite_language}!")
else:
print("hahaha")
my_love={"fruit":"apple","girl":"xiaolei","animals":"dog"}
print(my_love["fruit"])
for love,loves in my_love.items():
print(f"I like {love}:{loves}!")
#遍历字典中的所有键
my_love={"fruit":"apple","girl":"xiaolei","animals":"dog"}
for name in my_love.keys():
print(name)
good_friends=["xiaoma","xiaolei","xiaopei"]
for name in good_friends:
print(f"Hi,{name.upper()},you are my good friend")
else:
print("Sorry")
good_friends={"xiaoma","xiaolei","xiaopei"}
for name in good_friends:
print(name)
#按特定顺序遍历字典中的所有键
favorite_languages = {
"jen":"python",
"sarah":"C",
"edward":"ruby",
"phil":"python",
}
for name,names in sorted(favorite_languages): #用sorted()来获得按特定顺序排列的键列表
print({name})
favorite_languages = {
"jen":"python",
"sarah":"C",
"edward":"ruby",
"phil":"python",
}
for name,names in favorite_languages.items():
print(f"{name}:{names}")
favorite_languages = {
"jen":"python",
"sarah":"C",
"edward":"ruby",
"phil":"python",
}
for name in sorted(favorite_languages):
print(f"{name.title()},thank you for taking the poll!")
#遍历字典中的所有值
favorite_languages = {
"jen":"python",
"sarah":"C",
"edward":"ruby",
"phil":"python",
}
print("The following language have been mentioned")
for language in favorite_languages.values(): #用方法value()来返回一个值列表
print(language.upper())
favorite_languages = {
"jen":"python",
"sarah":"C",
"edward":"ruby",
"phil":"python",
}
print("The following language have been mentioned")
for language in set(favorite_languages.values()): #用方法set()来剔除重复,使每个元素都独一无二
print(language.upper())
##可用一对花括号表示集合,并在其中用逗号分隔各个元素
#如language={"python","C","Java"},表示一个集合
#注意区别字典,花括号内有键值对时才是字典
#P94小练习
favorite_numbers = {
"xiaoli": "hahaha",
'xiaoyong': 20,
"xiaohan": 28,
"xiaoye": 85,
}
for number,numbers in favorite_numbers.items():
print(f"{numbers}")
rivers={"nile":"egypt","huang_river":"china","mixixi":"usa"}
for river,river_1 in rivers.items():
print(f"The {river} runs through {river_1}!")
for river in sorted(rivers):
print(river)
for river_1 in rivers.values():
print(river_1.upper())
investigators={
'xiaolei':1,
"xiaoma":2,
"xiaopei":3,
}
inviter={
'xiaolei':1,
"xiaopei":3,
"xiaoha":1
}
for inviter_1 in inviter:
if inviter_1 in investigators:
print(f"{inviter_1.title()},thanks your help!")
else:
print(f"{inviter_1.title()},you lai yi xia!")
#嵌套
alien_0={"color":"blue","age":"100","favor":'boy'}
alien_1={"color":"yellow","age":"28","favor":'boy'}
alien_2={"color":"red","age":"17","favor":'boy'}
aliens=[alien_0,alien_1,alien_2]
print(aliens) #字典列表
for alien in aliens:
print(alien)
aliens=[]
for alien_number in range(30): #range(30)表示告诉Python要循环30次
new_alien={"color":"red","age":"17","favor":'boy'}
aliens.append(new_alien)
for alien in aliens[:5]: #使用一个切片来打印前5个外星人,打印的数量小于循环的次数
print(alien)
print(f"Total number of aliens:{len(aliens)}")
aliens=[]
for alien_number in range(30):
new_alien = {"color": "yellow", "age": "17", "favor": 'boy'}
aliens.append(new_alien)
for alien in aliens[:5]:
if alien["color"]=="red":
alien["color"]="blue" #如果颜色为红色,则将其颜色改为蓝色,将其年龄改为25,将其爱好改为女孩
alien["age"]=25
alien["favor"]="girl"
elif alien["color"]=="yellow":
alien["color"] = "lightblue" # 如果颜色为红色,则将其颜色改为蓝色,将其年龄改为25,将其爱好改为女孩
alien["age"] = 38
alien["favor"] = "animals"
for alien in aliens[:3]: #显示前三个外星人
print(alien)
#在字典中储存列表
favorite_languages={
"jen":["python","C"], #一个键关联到多个值
"sarah":"ruby",
"edward":["python","ruby"]
}
for name,names in favorite_languages.items():
print(f"xiaoma like {name.title()}:")
for names in favorite_languages:
print(f"{names.title()}")
print(len(names)) #看喜欢的语言有多少种
#在字典中存储字典
users={
"aeinstein":{
'first':'albert',
'last':'einstein',
'location':'princeton',
},
"mcurie":{
'first':'xiaoma',
'last':'xiaolei',
'location':'together',
},
}
for username,use_info in users.items():
print(f"\nUsername:{username}")
full_name=f"{use_info['first']}{use_info['last']}"
print(full_name)
#P100小练习
person={"xiaoma":"boy","xiaolei":"girl"}
person_1={"xiaoma_1":"boy_1","xiaolei_1":"girl_1"}
person_2={"xiaoma_2":"boy_1","xiaolei_2":"girl_2"}
people=[person,person_1,person_2]
print(people)
我现在开始学英语了,今天的Python就到这里吧!
明天上午一节中特课,下午继续学习!