为了账号安全,请及时绑定邮箱和手机立即绑定

将元组转换为字典中的列表

将元组转换为字典中的列表

qq_遁去的一_1 2021-11-30 16:11:34
我有以下形式的 GeoJSON 输出:{'type': 'Point', 'coordinates': (0.00027777777777777827, 22.000138888888873)}如何将“坐标”的值从元组转换为列表,同时保持“类型”不变?我已经尝试使用{k: [list(ti) for ti in v] for k, v in geom.items()}给出这里那里geom = geometry.mapping(geometry.Point(x, y)),但它并不能帮助。我看到一条错误消息,指出“浮动对象不可迭代”我正在使用匀称的库
查看完整描述

3 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

您只能将'coordinates'密钥更改为列表:

geom['coordinates'] = list(geom['coordinates'])

输出

{'type': 'Point', 'coordinates': [0.00027777777777777827, 22.000138888888873]}


查看完整回答
反对 回复 2021-11-30
?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

可以直接转换如下:

a['coordinates'] = list(a['coordinates'])

a你的字典在哪里。



查看完整回答
反对 回复 2021-11-30
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

非常简单的方法,通过 Python 控制台进行测试:


>>> d = {'type': 'Point', 'coordinates': (0.00027777777777777827, 22.000138888888873)}

>>>

>>> type(d)

<class 'dict'>

>>>

>>> d['coordinates']

(0.00027777777777777827, 22.000138888888873)

>>>

>>> type(d['coordinates'])

<class 'tuple'>

>>>

>>> list(d['coordinates'])

[0.00027777777777777827, 22.000138888888873]

最后,你只覆盖字典的内容:


>>> d['coordinates'] = list(d['coordinates'])


查看完整回答
反对 回复 2021-11-30
  • 3 回答
  • 0 关注
  • 171 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信