首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python字典、字符串及列表的相互转换

Python中几种常见数据结构的相互转换:字符串(str)、字典(dict)、列表(list)。

一、字符串–列表

字符串转列表

1.使用内置函数 list()

2.使用内置函数 eval()

3.使用内置模块 json.loads() 方法

4.使用 split() 进行分割

如果我们要对多个字符进行分割,那么可以使用内置模块 re.split() 方法。

列表转字符串

1.使用内置函数 str()

上面直接使用 str(),是将整个列表转换为字符串,如果我们不想改变列表的类型,只是要将列表中所有元素转为字符串,那么可以借助列表推导式来实现。

2.使用 join() 进行拼接

3.使用内置模块 json.dumps() 方法

需要注意的是,按 json 的标准规范是使用双引号 “”,因此在转换之后得到的json字符串是双引号的。

二、字符串–字典

字符串转字典

1.使用内置函数 eval()

2.使用内置模块 json.loads() 方法

3.使用内置模块 ast.literal_eval() 方法

我们发现,Python中已经有了内置函数 eval(),但现在却又出现个类似的 ast.literal_eval()方法,二者的区别是什么呢?

这里主要是出于安全性的考虑,因为 ast.literal_eval()会判断计算后的结果是不是合法的python类型,如果是则进行运算,否则就不进行运算,而 eval() 则不会管这些,即使字符串是一个命令,它也会进行解析。

因此,相比 eval() 函数, ast.literal_eval()更加安全,更被 推荐使用 。

字典转字符串

1.使用内置函数 str()

2.使用内置模块 json.dumps() 方法

需要注意的是,按 json 的标准规范是使用双引号 “”,因此在转换之后得到的json字符串是双引号的。

如果我们想让得到的字符串仍保持单引号,可以通过 replace() 方法来简单处理一下。

三、字典–列表

字典转列表

1.使用内置函数 list()

列表转字典

1.使用内置函数 dict(),将嵌套列表转换为字典

2.使用内置函数 zip(),将2个列表转换为字典

如果2个列表的长度不一样时,那么就不展示多出来的元素。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201218A0ALZ500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券