所以下面我的代码必须从文件中读取以打印文件的内容。我的问题是如何单独打印文件中的行,以便它们不是一次打印,而是仅在需要时打印?
input = input('Type:')
if input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
elif input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
elif input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
elif input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
elif input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
elif input == ('input'):
text_file = open("read.txt", "r")
print (text_file.read(39))
text_file.close()
先谢谢你的帮助:)
答案 0 :(得分:0)
如果您知道所需响应的行号并且文本文件不是那么大,您可以将文件行读入列表。
text_file = open("task2_solutions.txt", "r")
responses = text_file.read().split("\n")
text_file.close()
然后,您可以通过索引列表中的已知行号来访问相应的响应:
if user_input == ('wifi'):
print(response[0])
答案 1 :(得分:0)
我认为您最初可以读取此文件中的所有行,然后使用正则表达式根据字典中的关键字分隔这些行。之后,您可以使用字典来获得所需内容。
答案 2 :(得分:0)
您可以使用如下例所示的字典。优点是您可以使用一系列行号,它还可以简化代码:
import fileinput
plines = {'wifi':1,'storage':4}
user_input = input('Welcome to the troubleshooting system, please state which category you have having issues with:')
for line in fileinput.input("task2_solutions.txt"):
if fileinput.lineno() == plines[user_input]:
print line