gpt4 book ai didi

python - 访问字典元素的最Pythonic方式

转载 作者:太空宇宙 更新时间:2023-11-04 09:50:49 24 4
gpt4 key购买 nike

我多次调用 API,并最终将结果写入 CSV。我有以下代码从 dict 中提取数据:

city = data['property'][0]['address']['locality']
zip_code = data['property'][0]['address']['postal1']
county = data['property'][0]['area']['countrysecsubd']
condition = data['property'][0]['building']['construction']['condition']
roof = data['property'][0]['building']['construction']['roofcover']
bathrooms = data['property'][0]['building']['rooms']['bathstotal']
bedrooms = data['property'][0]['building']['rooms']['beds']
total_number_of_rooms = data['property'][0]['building']['rooms']['roomsTotal']
square_footage = data['property'][0]['building']['size']['bldgsize']
year_built = data['property'][0]['summary']['yearbuilt']
number_of_stories = data['property'][0]['building']['summary']['levels']
lot_size1 = data['property'][0]['lot']['lotsize1']
lot_size2 = data['property'][0]['lot']['lotsize2']
latitude = data['property'][0]['location']['latitude']
longitude = data['property'][0]['location']['longitude']

dict 的结构是 here在 Pastebin 上,因为它占用了大量空间。

如何用更少的代码获得相同的结果?

最佳答案

编写一个辅助函数,让您编写更少的样板文件:

def follow(obj, path):
for seg in path.split():
obj = obj[int(seg) if seg.isdigit() else seg]
return obj

调用:

prop = follow(data, "property 0")
city = follow(prop, "address locality")

等等

关于python - 访问字典元素的最Pythonic方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47879946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com