# 需求1:接收变量 k a b
s ='51 5000 10000'
a = s.split()print(a)
li =[]for item in s.split():
li.append(int(item))#常规结构
li =[int(item)for item in s.split()]#列表生成式结构print(li)
k, a, b = li
print(k, a, b)# 需求2:生成一个列表,列表的元素分别为[1**1,2**2,9**9]
li =[]for i inrange(1,10):
li.append(i**i)print(li)#常规结构print([i**i for i inrange(1,10)])#列表生成式结构#需求3:将列表中内容汇合
li =[[1,2,3],[4,5,6],[7,8,9]]
resli =[]for item1 in li:# [1,2,3] [4,5,6] [7,8,9]for item2 in item1:
resli.append(item2)print(resli)##常规结构print([item2 for item1 in li for item2 in item1])#列表生成式结构from itertools import chain
import itertools
print(list(itertools.chain(*li)))#chain函数
字典生成式
# 需求1:假设有20个学生,学生的分数在60~100之间,筛选出成绩在90分以上的学生import random
stuInfo ={}for i inrange(20):
name ='westos'+str(i)
score = random.randint(60,100)
stuInfo[name]= score
print(stuInfo)# highscore = {}# for name,score in stuInfo.items():# if score > 90:# highscore[name] = score# print(highscore)#常规方式print({name:score for name,score in stuInfo.items()if score >90})#字典生成式# 需求2:将所有的key值都变成大写
d =dict(a =1,b=2)print(d)
new_d ={}for i in d:
new_d[i.upper()]= d[i]print(new_d)#常规方式print({k.upper():v for k,v in d.items()})#字典生成式# 需求3:大小写的key值合并,统一以小写输出
d =dict(a=1,b=2,c=3,B=8,A=10)
new_d ={}for k,v in d.items():
low_k = k.lower()if low_k notin new_d:
new_d[low_k]= v
else:
new_d[low_k]+= v
print(new_d)#常规方式print({k.lower():d.get(k.upper(),0)+ d.get(k.lower(),0)for k in d})#字典生成式
文章目录生成式列表生成式字典生成式生成式列表生成式# 需求1:接收变量 k a bs = '51 5000 10000'a = s.split()print(a)li = []for item in s.split(): li.append(int(item))#常规结构li = [int(item) for item in s.split()]#列表生成式结构pr...