2015-09-30 2 views
2

Я пытаюсь написать простой скрипт с использованием python3, и я получаю эту ошибку при попытке заставить значение arg быть строкой. Я искал вокруг, но другие потоки в основном связаны с использованием Django и т. Д., Чего я не пытаюсь сделать.ТипError: __init __() получил неожиданный аргумент ключевого слова 'type' (проблема argparse?)

Любая помощь была бы принята с благодарностью! Заранее спасибо.

import argparse 

parser = argparse.ArgumentParser('seq_file', type=str, help = 'xyz') 
parser.add_argument('sequence_file', type=str, help='xyz') 

args = parser.parse_args() 

Ошибка я получаю:

File "x.py", line y, in <module> 
parser = argparse.ArgumentParser('seq_file', type=str, help='xyz') 
TypeError: __init__() got an unexpected keyword argument 'type' 

Что я делаю неправильно?

ответ

6

Документы показывают, что argparse.ArgumentParser не принимает аргумент type.

Похоже, вы пытаетесь описать аргумент в конструкторе до ArgumentParser. Для этого используйте метод add_argument.

Изменить

parser = argparse.ArgumentParser('seq_file', type=str, help = 'xyz') 

в

parser = argparse.ArgumentParser() 
parser.add_argument('seq_file', type=str, help='xyz') 
+0

Derp. Это все, все в порядке. Огромное спасибо! – jsw

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