#%%
# 使用 jupyter notebook 编写
"""
本章知识目录:
本节非常简单,看PPT即可,下面的代码为一些测试
1.列表推导式
2.字典推导式
"""
"""
考试:
for循环和if的组合使用
列表推导式
字典推导式(比列表推导式会简单一些)
"""
#%%
# 列表推导式
# 含义解析:
# 关键词for循环后跟的是循环语法,这部分不变;
# 而在for循环真正表达式部分则在列表推导式中移前,运算结果直接添加入列表中。
lst = [i**2 for i in range(5)]
print(lst)
total = sum(lst)
print(total)
mean = sum(lst) / len(lst)
print(mean)
a = list(range(1, 11))
print(a)
b = [x ** 3 for x in a if x%2 == 0]
print(b)
c = list()
for x in a:
if x % 2== 0:
c.append(x ** 3)
print(c)
# if写在前面
a = [1, 2, 3]
b = [i if i%2 == 0 else 1 for i in a]
print(b)
c = []
for i in a:
temp = i if i%2 == 0 else 1
c.append(temp)
print(c)
# if写在后面
a = [1, 2, 3]
b = [i for i in a if i%2 == 0]
print(b)
c = []
for i in a:
if i%2 == 0:
c.append(i)
print(c)
#%%
# 字典推导式
# 字典推导式多用于需要元素有一一对应关系时,
# 比如当变量是字符型时,需要将字符转换为一一对应的数值型。
for i, j in enumerate(['a', 'b', 'c']):
print(str(i)+ ',', j)
# enumerate是Python的一个常用内置函数,它用在列表中时,
# 不但会产生列表内的元素,并且会从"0"开始按顺序生成序号。
print(list(enumerate(['d', 'e', 'f'])))
print(list(enumerate(['d', 'e', 'f'], start=1)))
a = ['a', 'b', 'c']
b = dict(enumerate(a)) # 这样是正确的
print(b)
b = dict(list(enumerate(a, start=2))) # 这样也没有问题
print(b)
山东大学Python(4)——控制结构
猜你喜欢
转载自blog.csdn.net/weixin_43360801/article/details/103318002
今日推荐
周排行