Python-字符串、字典与列表之间的转换

前言

在处理数据的时候,经常需要转换数据的格式,来方便数据遍历等操作。

字符串转字典

dict_string = "{'name':'linux','age':18}"

to_dict = eval(dict_string)

print(type(to_dict))

也可以用json进行转换

import json #如果是Python2.6应该是simplejson

dict_string = "{'name':'linux','age':18}"

to_dict = json.loads(dict_string.replace("\‘","\“")) #这里需要将字符串的单引号转换成双引号,不然json模块会报错的

print(type(to_dict))

字典转字符串

同样也可以使用json

import json

dict_1 = {'name':'linux','age':18}

dict_string = json.dumps(dict_1)

print(type(dict_string))

当然也可以直接使用str强制转换

dict_1 = {'name':'linux','age':18}

dict_string = str(dict_1)

print(type(dict_string))

字符串转列表

指定分隔符

string1 = "1,2,3,4,5,'aa',12"

print(type(string1.split(',')))

如果已经是列表格式,直接使用eval即可

string2 = "[1,2,3,4,5,'aa',12]"

print(type(eval(string2)))

列表转字符串

直接使用str强制转换

print(type(str([1,2,3,4,5,'aa',12])))

指定分隔符,注意这里的列表需要都是字符串类型的,不然拼接的时候会报错

print(type("--".join(['a','b','c'])))

列表转字典

两个列表,list1 = ['k1','k2','k3'] 、 list2 = [1,2,3] ,转换成字典{’k1‘:1,'k2':2,'k3':3}

list1 = ['k1','k2','k3']

list2 = [1,2,3]

print(dict(zip(list1,list2)))

#zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。 zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换;如需展示成字典,需要手动dict()转换,如果元素个数不对应会报错。

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

扫码关注云+社区

领取腾讯云代金券