Python 在命令行参数中指定标志时执行什么操作?

Python 在命令行参数中指定标志时执行什么操作?,python,command-line,Python,Command Line,我试图将命令行参数添加到我正在编写的程序中。我在网上找到了一个教程,但我不完全确定其中一些行的实际功能。我目前不了解的主要部分是:在分配标志时的功能,例如:“hi:o:” 为什么在o的周围有2:?但不是h或i?另外,我是否正确理解了第一个列表“hi:o:”是速记,第二个列表[“ifile=”,“ofile=”]是更详细的版本 try: opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="]) except geto

我试图将命令行参数添加到我正在编写的程序中。我在网上找到了一个教程,但我不完全确定其中一些行的实际功能。我目前不了解的主要部分是:在分配标志时的功能,例如:
“hi:o:”

为什么在o的周围有2:?但不是h或i?另外,我是否正确理解了第一个列表
“hi:o:”
是速记,第二个列表
[“ifile=”,“ofile=”]
是更详细的版本

try:
      opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="])
   except getopt.GetoptError:
      print 'test.py -i <inputfile> -o <outputfile>'
      sys.exit(2) 
试试看:
opts,args=getopt.getopt(argv,“hi:o:”,[“ifile=”,“ofile=”)
除getopt.GetoptError外:
打印“test.py-i-o”
系统出口(2)

谢谢

指示前面的选项接受一个参数。也就是说,您使用类似于
-i inputfile-o outputfile
的东西调用程序

你对第二份清单的直觉是正确的