每当我尝试使用我的python程序读取文件时,在命令停止之前我只得到一行。我很确定它与print(line)
有关,但我不知道其他选择。这是我到目前为止所做的:
def fopen():
file = input("Open: ")
print("")
with open(file, 'r') as f:
for line in f:
print(line)
print("")
editredirect()
def editredirect():
print("You can edit this file with the 'edit' command.")
dcmdLvl2()
dcmdLcl2()只是将我发回我的命令行。
答案 0 :(得分:2)
是否要为文件中的每个行打印"You can edit this file..."
?可能不是......
另外,如果dcmdLvl2()
出于某种原因退出脚本,那么,你只会看到你文件的一行。
尝试取消缩进editredirect()
def fopen():
file = input("Open: ")
print("")
with open(file, 'r') as f:
for line in f:
print(line)
print("") # new line?
editredirect()
def editredirect():
print("You can edit this file with the 'edit' command.")
dcmdLvl2()
答案 1 :(得分:0)
由于缩进,您的editredirect()
位于循环内部。
尝试删除缩进并将editredirect()
(可能还有print("")
)移出循环。
答案 2 :(得分:0)
您在阅读一行后重定向到命令行,您应该从editredirect
循环中删除for
:
def fopen():
file = input("Open: ")
print("")
with open(file, 'r') as f:
for line in f:
print(line)
print("")
editredirect()