Я бы использовал 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)
РЕДАКТИРОВАТЬ: Моя ошибка. Это не поддержит ваш вариант использования.Это позволит вам указать путь к файлу, но не направлять содержимое файла в процесс. Я оставлю этот ответ здесь, так как он может быть полезен в качестве альтернативы.