所以我有一个来自 GDATA API (gdata.sample_util.authorize_client(client, service=client.auth_service, source=client.source, scopes=client.auth_scopes)) 的函数,它使用命令行接收参数。我怎样才能自动化它,以便我可以对参数进行硬编码?
问问题
429 次
2 回答
1
你的意思是硬编码参数,每次调用函数时不必编写的参数,或者从命令行打开程序?这些称为默认参数。看一下这个:
http://docs.python.org/release/1.5.1p1/tut/defaultArgs.html
例子:
def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):
while 1:
ok = raw_input(prompt)
if ok in ('y', 'ye', 'yes'): return 1
if ok in ('n', 'no', 'nop', 'nope'): return 0
retries = retries - 1
if retries < 0: raise IOError, 'refusenik user'
print complaint
所以你实际上可以用不同的方式调用这个函数:
ask_ok('Do you really want to quit?')
或像这样:
ask_ok('OK to overwrite the file?', 2)
祝你好运!
于 2012-08-23T22:01:35.530 回答
0
如果没有传递命令行参数,您可以根据需要添加参数
import sys
sys.argv += ["-a"]
于 2012-08-23T21:59:34.640 回答