所以我从一个文件中读取/打印出两行,但它们之间存在间隙,但我想但两者都在彼此旁边,我该怎么做。
if GTIN == '86947367':
fp = open("read_it.txt")
for i, line in enumerate(fp):
if i == 1:
print(line)
elif i == 2:
print(line)
fp.close()
当我运行它时,它会输出:
banana
(space)
(space)
5.00
我想把两个print(line)
放在一起,以便输出:
banana 5.00
TEXT FILE:
86947367
banana
5.00
78364721
apple
3.00
35619833
orange
2.00
84716491
sweets
8.00
46389121
chicken
10.00
74937462
答案 0 :(得分:1)
此:
with open("read_it.txt") as fp:
next(fp)
print(next(fp).rstrip(), next(fp))
打印:
banana 5.00
首先打开文件并保证将其关闭with open("read_it.txt") as fp:'
。现在,您使用next(fp)
跳过第一行。最后,打印两行的内容。您需要使用.rstrip()
在第一个打印行的末尾删除换行符。
您的文件对象fp
是一个所谓的迭代器。这意味着next(fp)
会为您提供下一行。
如果您要打印GTIN
的输出:
with open("read_it.txt") as fp:
GTIN = '86947367'
show = False
for line in fp:
if not line.strip():
show = False
continue
if line.strip() == GTIN:
show = True
continue
if show:
print(line.rstrip(), end=' ')
打印:
banana 5.00
答案 1 :(得分:0)
with open("read_it.txt") as f: print(' '.join([f.readline().rstrip() for x in range(3)][1:]))