我是Python的新手并且陷入了getopt.getopt
我知道有很多文档可用,但我无法理解这一点。如果来自python社区的人帮助我理解相同的
,我会很有帮助以下是我试图理解的代码段
import getopt
var1,var2 = getopt.getopt(['-a', '-bval', '-c', 'val','efoo', 'cfoo'], 'ab:c:')
print var1
print var2
输出
[('-a', ''), ('-b', 'val'), ('-c', 'val')]
['efoo', 'cfoo']
我无法解释这是怎么发生的
答案 0 :(得分:1)
参数ab:c:
表示它应该识别选项-a
,-b
和-c
。字母后面的:
表示该选项后面需要一个参数。
返回值是两个列表。第一个列表包含所有选项,分为(option, parameter)
个元组。第二个列表包含选项后面的所有剩余参数。
在您的示例中,选项-b
和-c
后面需要一个参数。因此,第一个列表包含('-b', 'val')
,因为-bval
是-b
选项,后跟val
参数,('-c', 'val')
因为遵循了-c
选项通过val
参数。 ('-a', '')
代表-a
选项,它没有参数。
结果的第二部分是['efoo', 'cfoo']
,因为这些是在所有选项之后剩余的参数。