我有一个代码,使用一个API的请求:
lists = [254,255,256]
length = len(lists)
for li in range(length):
for count in range(4):
#o start dentro de url é o counter. Ou seja, ele vai até 4, a partir do 0. O lists[li] é o id, logo ele faz um loop de 0 a 5 pra cada id e colheta as informações para transformar em DATA JSON
url = "https://((site-name))/api/v1/implantacao/projeto/{}/tarefa?start={}&limit=50".format(lists[li], count)
print(url)
response = requests.get(url, headers=headers)
data = response.json()
unidades(data)
在url中,第一个{}是项目的ID,第二个{}是分页
代码延续:
def unidades(data):
nome = []
for i in data['data']:
nome.append(i['nome'])
当我运行这段代码时,代码只返回URL中的最后一个Count循环(分页中的最后一页)
如果不使用append,而是使用list:
def unidades(data):
for i in data['data']:
print(i['nome'])
对于print,代码返回所有页面的所有信息,与list不同,list只返回最后一个页面,我怎么能像print输出一样,列出所有页面的所有信息呢?
1条答案
按热度按时间omqzjyyz1#
每次调用
unidades()
时,都从一个空的nome
列表开始。unidades()
应该将该列表作为一个参数并添加到该列表中,这样上一次调用中的名称将保持不变。