Как передать args в python с "дефисом" в имени arg - PullRequest
0 голосов
/ 10 июля 2019

У меня есть требование, при котором я должен выполнять определенные шаги внутри моего приложения в зависимости от режима развертывания Spark. У меня есть разные «шаги» в этом процессе, и определенные шаги необходимы, чтобы использовать «клиент» в режиме spark deploy, а другие должны использовать «кластер». Все эти 3 параметра передаются через spark-submit.

Я использую ниже парсер-

parser = argparse.ArgumentParser()
parser.add_argument("--exec_date", help="Business Date")
parser.add_argument("--step_num", help="Optional: Step to Run")
parser.add_argument("deploy-mode", help="deploy-mode")
args = parser.parse_args()

Теперь я передаю все эти аргументы моему основному сценарию -

execJob(sqlContext, args.exec_date, args.step_num, args.deploy-mode) 

Теперь я не могу использовать arg "deploy-mode", так как Python не разрешает дефис ("-") имени arg, и я не могу изменить имя "deploy-mode", потому что именно так Spark понимает это.

Теперь, как мне использовать «deploy-mode» для передачи в качестве одного из аргументов здесь?

...