函数调用问题

2024-03-29 10:27:04 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,我有一个函数调用问题。下面是为函数工作的me代码。你知道吗

def get_flickr_data(search_data,photo_number=50):
    baseurl ="https://api.flickr.com/services/rest/"
    params_d={}
    params_d["tags"]= search_data
    params_d["per_page"]=photo_number
    params_d["format"]= "json"
    params_d["method"]= "flickr.photos.search"
    params_d["tag_mode"]= "all"
    params_d["api_key"] = FLICKR_KEY
    unique_indent = params_unique_combination(baseurl,params_d)
    if unique_indent in CACHE_DICTION:
        flickr_info = CACHE_DICTION[unique_indent]
    else:
        resp = requests.get(baseurl,params_d)
        python_flickr = json.loads(resp.text[14:-1])
        CACHE_DICTION[unique_indent] = python_flickr
        f = open(CACHE_FNAME,"w")
        cache_str_tmp = json.dumps(CACHE_DICTION)
        f.write(cache_str_tmp)
        f.close()
    return CACHE_DICTION[unique_indent]

我试图用输入“mountains”(50作为第二个参数)调用get\u flickr\u data函数。然后我想把结果保存在变量flickr\u\u result中(旁注:我不太擅长函数,所以可能遗漏了一些东西)

get_flickr_data("mountains",50)
flickr_mountains_result = get_flickr_data
print flickr_mountains_result 

上面是我不工作的代码,我得到了回溯类型错误:“function”对象没有属性“getitem”。你知道吗


Tags: 函数代码jsoncachesearchdatagetparams
2条回答

此行正在执行函数:

get_flickr_data("mountains",50)

要捕获其结果,请结合第一行和第二行:

flickr_mountains_result = get_flickr_data("mountains",50)

然后,从函数返回的值是assigned to the variable。你知道吗

这应该起作用:

flickr_mountains_result = get_flickr_data("mountains",50)
print flickr_mountains_result 

您必须在变量中捕获函数返回的值,然后才能使用它。
阅读更多关于函数是如何工作的,以及如何使用它们here,或者任何其他适合初学者的教程!你知道吗

相关问题 更多 >