基本上,,我會做:爲什麼Python的argparse模塊動態(隱含地)創建變量名而不是強制顯式賦值?
parser = argparse.ArgumentParser(description="This is a command line parser!")
group = parser.add_mutually_exclusive_group()
group.add_argument('--send-emails', action="store_true", help="This will send production emails")
args = parser.parse_args()
if args.send_emails:
send_emails()
凡"--send-emails"
自動裝箱到"send_emails"
。這似乎有點傳統/隱含。強制使用name=
參數會讓它更加明確。
是否有任何PEP或郵件列表線程可以幫助我理解此理由?
編輯:我發現這個PEP的argparse,但一個快速瀏覽似乎表明它沒有解決這個具體的事情。 https://www.python.org/dev/peps/pep-0389/
這裏的不同之處在於,有一個關於轉換「show-items」可能已經轉換爲「show_items」的約定。 – mallyvai 2015-05-04 22:00:42