Python命令行’文件输入流’

我对来自C/C++的python很新,我想知道如何让我的’main.py’重新配置/使用从bash shell给出的输入:

python main.py < text.txt

(文件是纯文本)

解决方法:

我将使用argparse创建一个接受文件路径并打开它的选项解析器.

import argparse

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('infile', type='open')
    args = parser.parse_args()

    for line in args.infile:
        print line

if __name__ == '__main__':
    main()

如果type =’open’没有提供足够的控制,可以用argparse.FileType(‘o’)替换它,它接受bufsize和mode args(见http://docs.python.org/dev/library/argparse.html#type)

编辑:我的错误.这不会支持您的用例.这将允许您提供文件路径,但不会将文件内容传递到进程中.我会在这里留下这个答案,因为它可能有用作为替代方案.

上一篇:C#,将HTTP内容写入FileStream的问题,无法访问关闭的文件


下一篇:CodeGo.net>一个人如何使用FileStream追加到文件而没有排他锁?