Python教程:Python中的for 语句

Python 中的 for 语句与你在 C 或 Pascal 中可能用到的有所不同。 Python教程 中的 for 语句并不总是对算术递增的数值进行迭代(如同 Pascal),或是给予用户定义迭代步骤和暂停条件的能力(如同 C),而是对任意序列进行迭代(例如列表或字符串),条目的迭代顺序与它们在序列中出现的顺序一致。 例如(此处英文为双关语):

>>>

>>> # Measure some strings:
... words = ['cat', 'window', 'defenestrate']
>>> for w in words:
...     print(w, len(w))
...cat 3
window 6
defenestrate 12

 

如果在循环内需要修改序列中的值(比如重复某些选中的元素),推荐你先拷贝一份副本。对序列进行循环不代表制作了一个副本进行操作。切片操作使这件事非常简单:

>>>

>>> for w in words[:]:  # Loop over a slice copy of the entire list.
...     if len(w) > 6:
...         words.insert(0, w)
...
>>> words['defenestrate', 'cat', 'window', 'defenestrate']

 

如果写成 for w in words:,这个示例就会创建无限长的列表,一次又一次重复地插入 defenestrate

 

    原文作者:红皮橘子
    原文地址: https://www.cnblogs.com/yuanrenxue/p/10668556.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞