You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将坐标列表转换为SVG多边形所需的空格分隔坐标字符串?

坐标列表转SVG多边形格式字符串的解决方法

给定坐标列表:

my_list = [[200.0, 10.0], [250.0, 190.0], [160.0, 210.0]]

需要转换为SVG多边形所需的空格分隔坐标字符串:

req_list = "200,10 250,190 160,210"

可行方案

方法1:嵌套join处理(推荐)

直接遍历每个坐标对,将每对坐标用逗号连接,再把所有坐标对用空格拼接:

my_list = [[200.0, 10.0], [250.0, 190.0], [160.0, 210.0]]
# 保留小数形式
req_list = ' '.join([','.join(map(str, coord)) for coord in my_list])
# 输出:"200.0,10.0 250.0,190.0 160.0,210.0"

# 如果需要去掉.0(转整数)
req_list = ' '.join([f'{int(x)},{int(y)}' for x, y in my_list])
# 输出:"200,10 250,190 160,210"

方法2:格式化字符串控制精度

如果需要灵活控制小数位数(比如保留1位小数或去掉不必要的.0),可以用格式化字符串:

# 强制去掉小数部分(适合确定坐标是整数的场景)
req_list = ' '.join([f'{x:.0f},{y:.0f}' for x, y in my_list])
# 输出:"200,10 250,190 160,210"

# 保留1位小数
req_list = ' '.join([f'{x:.1f},{y:.1f}' for x, y in my_list])
# 输出:"200.0,10.0 250.0,190.0 160.0,210.0"

为什么replace方法无效?

replace是字符串对象的方法,不能直接用于列表。如果先把列表转成字符串再调用replace,虽然能临时解决问题,但容错性差——比如列表结构变化、包含其他特殊字符时,会出现意外错误,因此不推荐这种方式。

内容的提问来源于stack exchange,提问作者user110920

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 04:10:19