首页 / PYTHON / 将变量放在python列表理解中
将变量放在python列表理解中
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了将变量放在python列表理解中,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1630字,纯文字阅读大概需要3分钟。
内容图文
![将变量放在python列表理解中](/upload/InfoBanner/zyjiaocheng/665/578f82ae20c54147bb99ec7b82f9a1e8.jpg)
以下两个循环构造基本相同.我只是不知道如何在第一种语法中插入两个变量start = start 2和end = end 2.谢谢
第一步构造(列表理解):
start = 1
end = 3
clips = [ImageClip(os.path.join(folder,pic))
.resize(width=w*9.3/16)
.set_start(start)
.set_end(end)
.set_pos(lambda t:(max((402), (int(w-3*w*t))), "center"))
for pic in picfiles]
第二构造(常规循环):
start = 1
end = 3
clips = []
for pic in picfiles:
clips.append(ImageClip(os.path.join(folder,pic))
.resize(width=w*9.3/16)
.margin(left=31, opacity=0)
.set_start(start)
.set_end(end)
.set_pos(lambda t:(max((402), (int(w-3*w*t))), "center")) # move from right to center
)
start = start + 2
end = end + 2
解决方法:
有很多方法可以做到这一点.例如,您可以执行以下操作:
clips = [
ImageClip(os.path.join(folder,pic))
.resize(width=w*9.3/16)
.set_start(index*2+1)
.set_end(index*2+3)
.set_pos(lambda t:(max((402), (int(w-3*w*t))), "center"))
for index, pic in enumerate(picfiles)
]
它使用枚举功能.这是一个显示其工作原理的示例.
list(enumarate(['a','b','c'])) = ((1, 'a'), (2, 'b'), (3, 'c'))
但是,当使用这种结构时,您应该非常清楚,因为它有时会导致无法理解的公式.对于您的代码,我认为还可以,但是当您执行更复杂的计算时,常规循环通常会更干净.
如果其他值不相关(例如在示例中,循环索引,开始和停止之间存在简单关系),则也可以使用该构造.
[obj.setStart(start).setStop(stop) for obj, start, stop in objects, starts, stops]
您可以在其中定义所需的开始和停止方式.在您的特定问题中,应为:
clips = [
ImageClip(os.path.join(folder,pic))
.resize(width=w*9.3/16)
.set_start(start)
.set_end(stop)
.set_pos(lambda t:(max((402), (int(w-3*w*t))), "center"))
for start, stop, pic in
(
itertools.count(1, step=2),
itertools.count(3, step=2),
enumerate(picfiles)
)
]
内容总结
以上是互联网集市为您收集整理的将变量放在python列表理解中全部内容,希望文章能够帮你解决将变量放在python列表理解中所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。