gpt4 book ai didi

python - 如何使用缓冲区迭代字符串(python)

转载 作者:太空宇宙 更新时间:2023-11-03 12:19:54 26 4
gpt4 key购买 nike

我试图找到一些代码,给定一个字符串,允许我使用 for 循环结构遍历每一行,但增加了分离 for 循环结构的要求,不会将迭代重置回开头.

目前我有

sList = [line for line in theString.split(os.linesep)]
for line in SList
... do stuff

但是连续的 for 循环会将迭代重置回开头。

python 中是否存在用于此的东西,或者我必须从头开始编写一个?

最佳答案

只需使用生成器表达式 (genexp) 而不是您现在使用的列表理解 (listcomp) - 即:

sList = (line for line in theString.split(os.linesep))

就是这样——如果您对自己的代码感到满意(通过 os.linesep 拆分,即使 Python 中的普通文本 I/O 已经将它们转换为 \n... ),您需要做的就是使用括号(圆形)而不是方括号(方形),您将得到一个生成器而不是列表。

现在,每次你执行 for line in sList: 时,它都会从前一个停止的地方重新开始(可能是因为 break)——这就是您的要求,对吧?

关于python - 如何使用缓冲区迭代字符串(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1937519/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com