Я хочу использовать sys.argv
для доступа к аргументам, переданным скрипту. Вот мой код:Аргументы командной строки в Python с sys.argv
if __name__ == '__main__':
data = {}
if len(sys.argv) >= 2 :read_inputs(data, sys.argv[1])
else : print "ERROR : the config file is required in the command line"
if len(sys.argv) >= 3 :data['Parameters']['Mode'] = sys.argv[2]
print_data(data)
- Я понимаю, что
sys.argv[1]
иsys.argv[2]
относятся к аргументам. - Мои аргументы содержатся в текстовом файле.
Что я не могу понять, так это то, как я могу сказать код, что ему нужно прочитать аргументы в этом точном текстовом файле. Я использовал python Interface.py config.txt
, но это не сработало.
Любые идеи?
Ожидаете ли вы, что Python волшебным образом предположит, что 'argv [1]' содержит файл, который должен пройти и (каким-то образом) читать, чтобы получить аргументы? Это не произойдет **. – jonrsharpe
Вы должны открыть этот файл с помощью 'open()' и прочитать данные оттуда. В чем дело? Или вы можете использовать shell (если вы работаете с nix-подобной системой), чтобы помочь вам читать аргументы типа 'python Interface.py $ (cat config.txt)' – myaut
Прочтите этот файл в коде. Обратитесь к этой ссылке для примеров: http://www.tutorialspoint.com/python/python_files_io.htm –