2013-08-09 4 views

ответ

2

Готовые открытые файловые объекты:

import argparse, sys 

parser = argparse.ArgumentParser(description='Process src to dst') 
parser.add_argument('src', type=argparse.FileType('r'), 
        default=sys.stdin) 
parser.add_argument('dst', type=argparse.FileType('w'), 
        default=sys.stdout) 
options = parser.parse_args() 

Затем используйте options.src и options.dst как уже открытые файловые объекты.

печатает следующее при использовании переключателя --help командной строки:

usage: somescript.py [-h] src dst 

Process src to dst 

positional arguments: 
    src 
    dst 

optional arguments: 
    -h, --help show this help message and exit 
0

Если FileType в ответ Мартейн в вас смущает, более базовая настройка является

import argparse 
p=argparse.ArgumentParser() 
p.add_argument('file1') 
p.add_argument('file2') 
p.add_argument('file3') 

тест с:

import sys 
sys.argv.extend(['file1','file2','file3') 
p.parse_args() 
# Namespace(file1='file1', file2='file2', file3='file3') 

Здесь вы открываете файлы сами, а с FileType, arpgparse делает это для вас и заботится об ошибках, если у него есть проблемы.

Смежные вопросы