スクリプトを実行するときにフラグ(--slack
、または-s
)を追加すると、その都度、rep.post_report_to_slack()
メソッドをコメントアウトする必要はありません。それを使用したくない。私は実行すると:アクション= 'store_true'が期待通りに動作していないArgparse
$ python my_script.py --slack
を私はエラーを取得:
my_script.py: error: unrecognized arguments: --slack
ここでは、コードです:
def main():
gc = Google_Connection()
meetings = gc.meetings
rep = Report(meetings)
if args.slack:
rep.post_report_to_slack()
print('posted to slack')
if __name__ == '__main__':
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-s', '--slack', help='post to slack',
action='store_true')
args = parser.parse_args()
main()
レプリケートできませんでした。解析部分が正常に機能しています。しかし、実際には引数を使用していません。 – jonrsharpe
私はおそらく何か誤解していますが、引数を使ってargs.slackを呼び出していませんか? –
ああ、わかります - 引数を明示的に渡す方が良いでしょう(これにより、機能のテストと再利用が容易になります)。 – jonrsharpe