您好我遇到了函数调用问题。下面是我用于函数的代码。
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”调用我的get_flickr_data函数(并将50作为第二个参数)。然后我想将结果保存在变量flickr_mountains_result中。(旁注我不是很擅长函数所以我可能遗漏了一些东西)
get_flickr_data("mountains",50)
flickr_mountains_result = get_flickr_data
print flickr_mountains_result
上面是我的代码无效,我得到了追溯TypeError:'function'对象没有属性' getitem '。
答案 0 :(得分:1)
这一行正在执行函数:
get_flickr_data("mountains",50)
要捕捉其结果,请将第一行和第二行结合起来:
flickr_mountains_result = get_flickr_data("mountains",50)
您的函数返回的值为assigned to the variable。
答案 1 :(得分:0)
这应该有效:
flickr_mountains_result = get_flickr_data("mountains",50)
print flickr_mountains_result
您必须捕获变量中函数返回的值才能在之后使用它 阅读有关函数如何工作的更多信息,以及如何使用它们here,或者为您找到的初学者提供任何其他教程!