发电机在启动后是空的

2024-09-30 22:28:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚刚开始学习python生成器 对于下面的代码获取一个空白列表

Aircraft_typelst = ['Boeing','Airbus','MiJ','goes']
upper_case_name = ( name.upper() for name in Aircraft_typelst )
print(list(upper_case_name))
reverse = (rev[::-1]for rev in upper_case_name)
print(list(reverse))

输出

['BOEING', 'AIRBUS', 'MIJ', 'GOES']
[]

Tags: 代码namein列表forrevupper空白
1条回答
网友
1楼 · 发布于 2024-09-30 22:28:12

问题是你试图重用

无法重用生成器对象

# Problem is you are trying to reuse
# Generator object cannot be reused
Aircraft_typelst = ['Boeing','Airbus','MiJ','goes']
upper_case_name = ( name.upper() for name in Aircraft_typelst )
print(list(upper_case_name))
# Instead of it you can use it as
reverse = (rev[::-1 ]for rev in ( name.upper() for name in Aircraft_typelst) )
print(list(reverse))

输出

['BOEING', 'AIRBUS', 'MIJ', 'GOES']
['GNIEOB', 'SUBRIA', 'JIM', 'SEOG']

相关问题 更多 >