Используя argparse, я создал небольшой скрипт, содержащий синтаксический анализатор командной строки для моей программы анализа, которая является частью собственного пакета python. Он отлично работает, но мне не очень нравится, как его контролировать.Nicer командной строки parse python
Вот как выглядит код в самом сценарии
def myAnalysis():
parser = argparse.ArgumentParser(description='''
lala''')
parser.add_argument('-d', '--data',help='')
parser.add_argument('-e', '--option_1', help='', default=False, required=False)
parser.add_argument('-f', '--option_2', help='', default=False, required=False)
# combine parsed arguments
args = parser.parse_args()code here
В дополнение к этому есть еще немного в файле установки пакета анализа
entry_points={
'console_scripts': [
'py_analysis = edit.__main__:myAnalysis'
]
Как я уже сказал, это работает без какие-то проблемы. Чтобы проанализировать некоторые данные, я должен использовать
py_analysis --data path_to_data_file
Иногда мне нужны некоторые варианты. Для этого он может выглядеть loke
py_analysis --data path_to_data_file --option_1 True --option_2 True
По моему личному вкусу это отвратительно. Я бы предпочёл что-то вроде
py_analysis path_to_data_file --option_1 --option_2
Я вполне уверен, что это возможно. Я просто не знаю, как
Взгляните на документ: https://docs.python.org/3/ библиотека/argparse.html. Вы хотите 'action = 'store_true''. –