首先,我是Python的新手,确实搜索了答案,但是没有运气。到目前为止,我发现的内容只返回一行,就像下面的代码一样。我尝试了其他解决方案,例如,itertools.islice
但总是只能返回一行。
我有一个名为data.txt
包含数据行的文件:
This is line one
This is line two
This is line three
This is line four
This is line five
This is line six
This is line seven
...
我有以下代码:
with open('data.txt', 'r') as f:
for x, line in enumerate(f):
if x == 3:
print(line)
在这种情况下,它仅打印
“这是第四行”。
我知道为什么,但是如何从这里拿走并打印第4、7、10、13行…?
的返回值open
是一个迭代器(因此是可迭代的),因此您可以将其传递给itertools.islice
:
islice(iterable,start,stop [,step])-> islice对象
返回一个迭代器,该迭代器的next()方法返回可迭代的选定值。[…]
演示:
data.txt
:
line1
line2
line3
line4
line5
line6
line7
line8
line9
line10
line11
line12
line13
码:
from itertools import islice
with open('data.txt') as f:
for line in islice(f, 3, None, 3):
print line, # Python3: print(line, end='')
产生:
line4
line7
line10
line13
问题内容: 我有一个目录日志文件。我想使用Python脚本处理此目录中的每个文件。 我该怎么做呢? 问题答案: 使用或,取决于您是否要递归执行。
问题内容: 我有一个带有一些十六进制数字的文本文件,我正在尝试将其转换为十进制。我可以成功转换它,但似乎在循环存在之前它会读取一些不需要的字符,因此我遇到了以下错误。 我的代码如下 每个十六进制数字都在新行中输入 问题答案: 追溯表明文件末尾可能有一个空行。您可以这样解决: 另一方面,最好使用代替。不要忘记关闭文件,或者更好地使用该文件来关闭它们:
问题内容: 我需要获取目录中所有文件的列表,包括所有子目录中的文件。用Java完成目录迭代的标准方法是什么? 问题答案: 你可以用来测试给定的文件(路径)是否为目录。如果是true,则只需再次调用同一个方法及其结果即可。这称为递归。 这是一个基本的启动示例。 请注意,这对树的深度超过JVM堆栈可以容纳的深度很敏感。你可能要使用迭代方法或尾递归,但这是另一个主题;)
问题内容: 说我有一个清单,我想遍历第一个清单。用Python编写此代码的最佳方法是什么? 问题答案: 通常的方法是切片:
问题内容: 我有一个Map如下所示的bean: 这ftqSet适合以下数据结构: 在我的测试JSP文件中,我一直在尝试使用来访问数据 : 但是它没有输出${f.feedId}。为什么会这样呢?我将如何访问该结构的各个元素,以便创建一个漂亮的表? 问题答案: 的每次迭代中给出了一个实例,它反过来又和getValue()方法。这与在普通Java中进行操作类似。 例如 在的情况下, 的回报, ,所以你需
问题内容: 我试图在PowerShell中遍历以下JSON文件。 如果没有专门命名顶部标签(例如17443和17444),由于我事先不知道它们的名称,就无法找到遍历数据的方法。 我想为所有记录输出标签3、4和5(标题,名字,姓氏)。 我该怎么做? 我可以使用下面的代码访问数据,但我想避免放入17443、17444等。 问题答案: 在PowerShell 3.0及更高版本中(请参阅:确定已安装的Po