0

所以我有一个来自 GDATA API (gdata.sample_util.authorize_client(client, service=client.auth_service, source=client.source, scopes=client.auth_scopes)) 的函数,它使用命令行接收参数。我怎样才能自动化它,以便我可以对参数进行硬编码?

4

2 回答 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 回答