Python3 字符串str和列表list转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3 字符串str和列表list转换相关的知识,希望对你有一定的参考价值。

参考技术A >>> str1 = "abcdefg"

>>> list1 = list(str1)

>>> print(list1)

['a', 'b', 'c', 'd', 'e', 'f', 'g']

>>> str4 = "username=admin&passsword=123456"

>>> list4 = str4.split("&")

>>> print(type(list4))

<class 'list'>

>>> print(list4)

['username=admin', 'passsword=123456']

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

>>> str5 = "username=admin&passsword=123456"

>>> import re

>>> list5 = re.split("&|=", str5)

>>> print(type(list5))

<class 'list'>

>>> print(list5)

['username', 'admin', 'passsword', '123456']

>>> import json

>>> str3 = '["aaa", "bbb", "ccc", "ddd"]'

>>> list3 = json.loads(str3)

>>> print(type(list3))

<class 'list'>

>>> print(list3)

['aaa', 'bbb', 'ccc', 'ddd']

>>> str2 = "['aaa', 'bbb', 'ccc', 'ddd']"

>>> list2 = eval(str2)

>>> print(type(list2))

<class 'list'>

>>> print(list2)

['aaa', 'bbb', 'ccc', 'ddd']

针对str2,json.loads()方法为何失灵了?

因为 json.loads() 将json格式字符串转换为python对象,而按 json 的标准规范应该使用双引号,如果使用单引号会导致报错。

# 注意,转换之后,双引号会变为单引号

>>> list1 = ["aaa", 123, 'ccc', True]

>>> str1 = str(list1)

>>> print(type(str1))

<class 'str'>

>>> print(str1)

['aaa', 123, 'ccc', True]

>>> list3 = ['username=admin', 'passsword=123456']

>>> str3 = "&".join(list3)

>>> print(type(str3))

<class 'str'>

>>> print(str3)

username=admin&passsword=123456

# 这里列表中使用了单引号

>>> list4 = ['username=admin', 'passsword=123456']

>>> import json

>>> str4 = json.dumps(list4)

>>> print(type(str4))

<class 'str'>

>>> print(str4)

["username=admin", "passsword=123456"]

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

python列表转换为字符串

对于非纯字符串组成的列表,需要使用map(str, 列表)转换,纯字符串组成的列表则不需要转换

list1 = [1, 2, 3, 4, 5]
c = ‘,‘.join(map(str,list1))
print(c)
print(type(c))


list2 = [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
d = ‘,‘.join(list2)
print(d)
print(type(d))


 

以上是关于Python3 字符串str和列表list转换的主要内容,如果未能解决你的问题,请参考以下文章

Python3基础 list() 将一个字符串转换成列表

Python3数据结构

Python 实现字符串转换成列表 实现str转换list

将字符串转换为列表 - str2list('[abc]') 应该返回 ['a','b','c']

在python中,列表,元组,字典,字符串之间是可以互相转换的

Python 字符串/列表/元组/字典之间的相互转换