我试图编写一个python程序,它将读取输入并将其复制到标准输出(没有任何改动)。我被告知它需要作为Unix cat函数的Python版本运行。如果无法打开文件,则需要打印错误消息,然后程序需要继续处理任何其他文件。我是一个完全的初学者,并且尽我所能用我有限的知识来榨取一些东西。以下是我到目前为止的情况:
from sys import argv, stdout, stdin, stderr
if len(argv) == 1:
try:
stdout.write(raw_input(' ') + '\n')
except:
stderr.write ('sorry' + '\n')
quit()
else:
for filename in argv[1:]:
try:
filehandle + open(filename)
except IOError:
stderr.write('Sorry, could not open', filename + '\n')
continue
f = filehandle.read()
stdout.write(f)
我不太确定从哪里开始..有没有人有任何建议/我是否在正确的轨道上甚至一点点?拜托,谢谢!
答案 0 :(得分:2)
此函数将逐行将指定文件复制到控制台(以防您稍后决定使其能够使用cat的-n
命令行选项)
def catfile(fn):
with open(fn) as f:
for line in f:
print line,
一旦确定文件存在,就可以使用文件名调用它。