python的for语句放在后面的用法

365bet亚洲版网址 📅 2025-11-20 10:51:12 ✍️ admin 👀 7869 ❤️ 746
python的for语句放在后面的用法

在阅读某位大佬的源码时发现for语句的另外一种用法,for语句放在整条语句的后面,心生疑惑,于是将那段代码运行一遍发现没报错,然后通过查阅资料和自己写代码的测试,由于可供查阅的文章有限,我现在也是一知半解,如发现不对请告知我。

for语句放在后面以前也知道,就是列表推导式,例如:

l = [ i for i in range(10)]

一直以为这种写法只能用来写列表推导式,但是他还能这样用

s1 = ''.join(

random.choice(string.digits + string.ascii_letters)

for i in range(1000)

)

"""

相当于

s2 = ''

for i in range(1000):

s2.join(random.choice(string.digits + string.ascii_letters))

"""

li = [i for i in range(2000) if i % 2 == 0]

d1 = {li.pop() : i for i in range(1000)}

"""

相当于

li = [i for i in range(2000) if i % 2 == 0]

d2 = {}

for i in range(1000):

d2[li.pop()] = i

"""

语句不难理解,很直观,但是为什么这样的用法一般是用在列表推导式中,用在字典推导式(不知道怎么叫,暂且这么叫)中的却很少。然后我在测试时发现列表推导式比用普通循环处理列表时快,但是在字典中确是很不稳定,大部分时候是普通循环比字典推导式的运行速度快,至于其他用法可能是出现的场景比较少吧。

至于为什么列表推导式会快详情请百度。

越学越发现自己无知,心累。。。。

相关推荐

365bet亚洲版网址 摩托车电瓶是多少安的?

摩托车电瓶是多少安的?

📅 07-25 👀 6142
365bet亚洲版网址 2025年自动酿造系统最新使用指南
365bet亚洲版网址 陆家嘴视频

陆家嘴视频

📅 10-02 👀 6671
365bet足球数据直播 ➤ 今年 % PC 上 8 个最佳书籍排版程序
365bet足球数据直播 为什么打开不了Steam?常见问题及解决方法
365bet足球数据直播 ​​Excel技巧,要想在EXCEL中统计单元格颜色的个数,函数方法!
365bet娱乐开户 淤字的意思解释,淤的读音怎么读,部首,笔顺,笔画
365bet足球数据直播 教你如何捕捉画眉鸟

教你如何捕捉画眉鸟

📅 06-28 👀 7694
365bet亚洲版网址 锡纸大解密:从制作流程到创意应用的全面指南?

友情伙伴