У меня есть две функции: (1) запуск демонстрационного анализа и (2) пользовательская функция, которая читается через файл. Я хотел бы передать аргумент командной строки, чтобы пользователь мог выбрать либо демонстрационную функцию, либо пользовательскую функцию как true или false. Никакие другие значения не должны быть переданы. Я не уверен, что я должен добавить в функцию, чтобы принять arg.parse
def demo()
print("This is demo function")
def custom()
print("This is custom function")
def main():
parser = argparse.ArgumentParser(description="Argument Parser is boolean to run Pipeline'")
parser.add_argument("--demo", help='Demo data to show an example')
parser.add_argument("--custom", help='Specify custom analysis, sql query is read from userquery.sql')
args = parser.parse_args()
if args.demo == True:
demoanalysis()
elif args.custom == True:
customanalysis()
else:
print("Don't do anything")
Однако, когда я запускаю скрипт, он сразу переходит к третьему варианту.
python script.py --demo True --custom False
Don't do anything
Я понимаю, что что-то должно быть передано каждой функции, чтобы принять логические аргументы, но не знаю, как это сделать. Какие-либо предложения. Благодарю.