Can you stop please
Sent from Yahoo Mail for iPhone On Tuesday, January 24, 2023, 10:12 AM, Thomas Passin <li...@tompassin.net> wrote: On 1/23/2023 9:12 PM, Chris Angelico wrote: > On Tue, 24 Jan 2023 at 13:09, Jach Feng <jf...@ms4.hinet.net> wrote: >> >> Chris Angelico 在 2023年1月24日 星期二清晨5:00:27 [UTC+8] 的信中寫道: >>> On Tue, 24 Jan 2023 at 07:47, Cameron Simpson <c...@cskk.id.au> wrote: >>>> >>>> But for Jach Feng: the "--" is really expected as something the user >>>> does when they invoke your programme, _explicitly_ saying that what >>>> follows from here is not an argument. So the user is expected to type: >>>> >>>> your_script -x -y -- "-4^2+5.3*abs(-2-1)/2" >>>> >>>> where there are -x and -y options, then end of options, then an >>>> argument, which would look like an option if there wasn't the "--" >>>> argument. >>> And if you DON'T expect the user to enter the "--", then why use >>> argparse? You can just check argv directly to get your arguments. >>> >>> This entire thread is a massive "how can I use X to do Y?" problem. >>> >>> ChrisA >> The '--' requirement makes its usage less instinctive, and handling argv >> directly makes me loss the benefit of using '-h':-) > > if "-h" in sys.argv: usage() > else: do_stuff_with(sys.argv[1:]) > > What is argparse really doing for you? I second this. "if '-h' in sys.argv:" is usually what I do. Alternatively, you could use "--arg=" syntax and place your string "-4^2+5.3*abs(-2-1)/2" its right-hand side": infix2postfix [options] "--infix=-4^2+5.3*abs(-2-1)/2" This shouldn't be too hard for a user to work with. You could scan the argument list for the presence of "--infix=" and display the help message if it isn't there. -- https://mail.python.org/mailman/listinfo/python-list -- https://mail.python.org/mailman/listinfo/python-list