关于if的tips
1、检查多个条件
表示与用 and
age1 > 21 and age2 < 40
为改善可读性,可改成如下:
(age1 > 21) and (age2 < 40)
表示或用or:
(age1 > 21) or (age2 < 40)
2、检查特定值是否在/不在列表中:in/not in
players = ["aa","bb","cc","dd","ee"]
c="aa" in players
d="ab" not in players
print(c)
print(d)
True
True
3、if
语句:带冒号
if xxx:
do something
else:
do somethingelse
if xxx:
do something
elif xxx1:
do somethingelse
else:
do otherthing
4、if 确定列表不是空的
r_t=[]
if r_t:
...
else:
...
5、if 是否存在于列表(in)
a_t =['pp','oo']
b_t = ['pp','aa']
if a_t[0] in b_t:
print("It's in!")
字典
使用字典
Python中,字典是一系列键-值对,用大括号{}表示。每个键都与一个值相关联,值可以是数字、字符串、列表乃至字典。
1、访问
alien_0 = {'color':'green','points':5}
print(alien_0['color'])
green
2、添加键-值对 修改值
可在初始化后再继续向字典添加键-值对:
#alien_0 = {} #创造空字典
alien_0 = {'color':'green','points':5}
print(alien_0['color'])
alien_0['x_position'] = 0
alien_0['y_position'] = 25
alien_0['color'] = 'yellow'
print(alien_0['x_position'])
print(alien_0)
green
0
{'color': 'yellow', 'points': 5, 'x_position': 0, 'y_position': 25}
3、删除键-值对
del alien_0['x_position']
删除的键-值对永远消失了。
遍历字典
1、遍历所有键-值对
user_0 = {
'username':'efermi',
'first':'enrico',
'last': 'fermi',
}
for key,value in user_0.items():
print('\nKey: ' +key)
print('Value:' + value)
Key: username
Value:efermi
Key: first
Value:enrico
Key: last
Value:fermi
注:key指前值,value指后值
一定要加.item()!!!
方法item() 返回一个键-值对列表,如下所示
2、遍历字典中所有键
f_ls={
'jen':'python',
'sarah':'c',
'edward':'ruby',
'phil':'python'
}
for name in f_ls.keys():
print(name.title())
Jen
Sarah
Edward
Phil
方法keys()提取字典中的键(不提取值),默认不添加,但是为了更好的阅读程序,最好添加。即下式与上式效果一样:
for name in f_ls:
3、按顺序遍历字典中所有键
for name in sorted(f_ls):
print(name.title())
Edward
Jen
Phil
Sarah
按照字母顺序排列。
4、遍历字典中的值
使用方法value()
f_ls={
'jen':'python',
'sarah':'c',
'edward':'ruby',
'phil':'python'
}
for value in set(f_ls.values()):
print(value.title())
C
Python
Ruby
set()去掉重复值
嵌套
将字典存储在列表中,或者将列表作为值存储在字典中,称为嵌套。
1、字典列表
alien_0 = {'color':'green','points':5}
alien_1 = {'color':'yellow','points':10}
alien_2 = {'color':'red','points':15}
aliens = [alien_0,alien_1,alien_2]
print(aliens)
[{'color': 'green', 'points': 5}, {'color': 'yellow', 'points': 10}, {'color': 'red', 'points': 15}]
2、列表字典
f_ls = {
'jen': ['python','rudy'],
'sarah': ['c'],
'edward': ['ruby','go'],
'phil': ['python','haskell']
}
for name,value in f_ls.items():
print('\n'+name.title()+':')
for lang in value:
print(lang.title())
Jen:
Python
Rudy
Sarah:
C
Edward:
Ruby
Go
Phil:
Python
Haskell
注:列表和字典的嵌套层级不应太多,否则应该用更简单的方法。
3、字典字典
cities = {
'Beijing':
{
'country':'China',
'population':'1.4 billion',
'fact':'developing'
},
'New York':
{
'country':'usa',
'population':'millions',
'fact':'developing'
},
'tokyo':
{
'country': 'japan',
'population': 'millions',
'fact': 'developing'
},
}
for name,value in cities.items():
print('\n'+name+':')
for info,data in value.items():
print(info+':'+data)
Beijing:
country:China
population:1.4 billion
fact:developing
New York:
country:usa
population:millions
fact:developing
tokyo:
country:japan
population:millions
fact:developing