完成这些数符转换,需要借助int(x)字符串转换工具,需要用到python编辑器,具体步骤如下:
1、打开任意python编辑器,这里以jupyter notebook为例。
2、以一个字母表组成的字符串为例,将其转换成由每个字母组成的列表。
3、以一个数字组成的字符串为例,将其转换成由每个数字组成的列表。
4、若字符串中存在符号,可据此分割并转化成列表。如图,字符串中存在逗号:
5、其它符号原理相同,如图中根据符号“/”进行分割。
6、同理,字符串中其它元素亦可用来作为分割条件,进而转化成列表。如图中的1,可据此作为分割:
如果直接变成字符串包括两边的中括号可以用str()方法,只要里面的话可以用join方法拼接>>>s = ['hello', 'world']>>>str(s)"['hello', 'world']">>>' '.join(s)'hello world'
>>>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下字典、字符串及列表的相互转换