[英]How to create a new list from other two lists, apply a function and append the output to each list?
预先感谢您的帮助。
我需要从WebService检索一些数据(客户端和产品)。 这段代码获取数据并将其转换为列表,其中包含字典。
consumidores = requests.get(url + 'all_consumers', headers=custom_header) # lista
con = consumidores.json()
productos = requests.get(url + 'all_products', headers=custom_header) # lista
prod = productos.json()
c = []
for key in con:
c = [key['genero'], key['complexion'], key['tallaCamisa'], key['tallaPantalon'], key['edad'], key['ubicacion'],
key['valorComercial'], key['valorCompra']]
p = []
for index in prod:
p = [index['genero'], index['precio']]
我需要做的是创建两个列表,一个用于客户,一个用于产品。 为每个客户和产品选择一些特定元素,然后创建一个新的列表,看起来像这样
new_list = [[costumer_1, costumer_element1, costumer_element2 , ... , product_1, product_element1, product_element2, ...], [costumer_1, costumer_element1, ..., product_1, product_element1, ...], [costumer_2, costumer_elementn, ... product_1, product_element1 ,...] , ...]
然后应用将客户与产品相关联的函数,并将结果附加到产生该输出的列表中:
results = [[costumer_1, costumer_element1, costumer_element2 , ... , product_1, product_element1, product_element2, RESULT], etc]
for key in con:
index=0
param_relcp = c[index][key['genero'],key['edad']]
index=index + 1
这将返回错误:IndexError:列表索引超出范围并使用此
c = []
for key in con:
c = [key['genero'], key['complexion'], key['tallaCamisa'], key['tallaPantalon'], key['edad'], key['ubicacion'],
key['valorComercial'], key['valorCompra'], key['id']]
仅从列表的第一个中获取元素。 任何帮助将不胜感激。
您的循环似乎都不起作用,例如
for key in con:
c = [key['genero'], key['complexion'], key['tallaCamisa'], key['tallaPantalon'], key['edad'], key['ubicacion'],
key['valorComercial'], key['valorCompra']]
每次都替换c
,并且您只能从循环的最后一次获得最后一个值。 您对p
执行相同操作,对param_relcp
执行相同param_relcp
。
要么:
c = []
for key in con:
c.append([key['genero'], key['complexion'], key['tallaCamisa'], key['tallaPantalon'], key['edad'], key['ubicacion'],
key['valorComercial'], key['valorCompra']])
要么
c = [[key['genero'], key['complexion'], key['tallaCamisa'], key['tallaPantalon'], key['edad'], key['ubicacion'],
key['valorComercial'], key['valorCompra'] for key in con]
其他的也一样
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.