Python 反复浏览字典列表。发挥作用
免责声明。我是python新手,正在努力学习。我有一个包含地址信息的字典列表,我想迭代,然后作为参数传递到函数中Python 反复浏览字典列表。发挥作用,python,parameter-passing,keyword-argument,Python,Parameter Passing,Keyword Argument,免责声明。我是python新手,正在努力学习。我有一个包含地址信息的字典列表,我想迭代,然后作为参数传递到函数中 打印(数据) 我迭代列表并尝试传入值,但值作为列表而不是单独传递过去。我不知道如何纠正。我仍然掌握参数和关键字参数。感谢您的帮助和指导 from usps import USPSApi, Address input_name = [li['lastName'] for li in data] input_address = [li['address'] for li in dat
打印(数据)
我迭代列表并尝试传入值,但值作为列表而不是单独传递过去。我不知道如何纠正。我仍然掌握参数和关键字参数。感谢您的帮助和指导
from usps import USPSApi, Address
input_name = [li['lastName'] for li in data]
input_address = [li['address'] for li in data]
input_city = [li['city'] for li in data]
input_state = [li['state'] for li in data]
input_zip = [li['zip'] for li in data]
input_country = [li['country'] for li in data]
address = Address(
name = input_name,
address_1= input_address,
city= input_city,
state=input_state,
zipcode=input_zip
)
usps = USPSApi('------', test=True)
validation = usps.validate_address(address)
data_results = validation.result
print(data_results)
您已经拥有处理单个数据点的所有逻辑,只需使用循环将其扩展到多个数据点,如下所示
from usps import USPSApi, Address
for item in data:
kwargs = dict()
kwargs['name'] = item['lastName']
kwargs['address_1'] = item['address']
kwargs['city'] = item['city']
kwargs['state'] = item['state']
kwargs['zipcode'] = item['zip']
address = Address(**kwargs)
usps = USPSApi('------', test=True)
validation = usps.validate_address(address)
data_results = validation.result
print(data_results)
如果没有语法上的糖分,它就会变成
for item in data:
kwargs = dict()
name = item['lastName']
address_ = item['address']
city = item['city']
state = item['state']
zip_ = item['zip']
address = Address(
name=name,
address_1=address_,
city=city,
state=state,
zipcode=zip_)
如果目的是在变量中获取键的值:
d_data = [{'firstName': 'John', 'lastName': 'Smith', 'address': '123 Lane', 'country': 'United States', 'state': 'TX', 'city': 'Springfield', 'zip': '12345'}, {'firstName': 'Mary', 'lastName': 'Smith', 'address': '321 Lanet', 'country': 'United States', 'state': 'Washington', 'city': 'Springfield', 'zip': '54321'}]
input_name = d_data[0]['lastName']
input_address = d_data[0]['address']
input_city = d_data[0]['city']
input_state = d_data[0]['state']
input_zip = d_data[0]['zip']
input_country = d_data[0]['country']
print(input_name)
print(input_address)
print(input_city)
print(input_zip)
print(input_country)
输出:
John
Smith
123 Lane
Springfield
12345
United States
请特别重复介绍之旅。由于数据
未定义,您发布的代码在第一个活动行失败。我们还希望您进行基本的调试:如果您在收集变量时打印变量,您将看到您专门列出了地址的每个部分。我不确定你认为地址
应该为你做什么,但你非常清楚地将每个部分的完整列表分配到了地址的每个字段。你似乎在寻找现有教材中提供的教程帮助(部分)。堆栈溢出不是为了替换这些资源。是否控制生成该字典列表的上游进程?