为什么 python 将我的脚本视为参数,而 运行 却将其视为参数?
Why does python treat my script like an argument while running it?
所以我决定在 "learn python the hard way" 中完成每个练习(以及练习的每个部分),然后我得出了这个:
将 raw_input
与 argv
相结合,制作一个可以从用户那里获得更多输入的脚本。别想太多了。只需使用 argv
来获取某些东西,然后使用 raw_input 从用户那里获取其他东西。
所以为了配合练习,我做了这个:
from sys import argv
name = argv
print "Your name is %s" %(name)
然后当我运行它(python module.py myname
)时,这是结果:
Your name is ['module.py', 'myname']
为什么 python 在阅读脚本的同时将 module.py 视为一个参数?
我知道如果我们处理的是 exe,它不会这样做。
argv
是一个 array,包含所有参数,包括第 0 个参数,这是调用程序的名称;那是 C 约定。
I know it would not do this if we were dealing with an exe.
我声明您的声明是错误的。在这种情况下,argv[0]
应该是可执行文件的名称。
所以我决定在 "learn python the hard way" 中完成每个练习(以及练习的每个部分),然后我得出了这个:
将 raw_input
与 argv
相结合,制作一个可以从用户那里获得更多输入的脚本。别想太多了。只需使用 argv
来获取某些东西,然后使用 raw_input 从用户那里获取其他东西。
所以为了配合练习,我做了这个:
from sys import argv
name = argv
print "Your name is %s" %(name)
然后当我运行它(python module.py myname
)时,这是结果:
Your name is ['module.py', 'myname']
为什么 python 在阅读脚本的同时将 module.py 视为一个参数?
我知道如果我们处理的是 exe,它不会这样做。
argv
是一个 array,包含所有参数,包括第 0 个参数,这是调用程序的名称;那是 C 约定。
I know it would not do this if we were dealing with an exe.
我声明您的声明是错误的。在这种情况下,argv[0]
应该是可执行文件的名称。