目录
零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门
字符串转为列表 list ,可以使用 str.split() 方法, split 方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ str1 = "hello word 猿说python python教程" print(str1) # 输出字符串 print(type(str1)) # 输出数据类型: print(len(str1)) # 输出字符串长度 print("***"*20) # 小敲门:直接打印60个* #根据空格切片 list1 = str1.split(" ") # 对字符串中的空格(' ')进行切片,返回值是一个列表list并赋值给list1 print(list1) # 输出列表数据 print(type(list1)) # 输出数据类型:类型 print(len(list1)) # 输出列表长度(列表的数据个数) print("***"*20) # 小敲门:直接打印60个* #根据字符'p'切片 list1 = str1.split("p") # 对字符串中的'p'进行切片,返回值是一个列表list并赋值给list1 print(list1) # 输出列表数据 print(type(list1)) # 输出数据类型:类型 print(len(list1)) # 输出列表长度(列表的数据个数) print("***"*20) # 小敲门:直接打印60个* #根据字符'o'切片 list1 = str1.split("o") # 对字符串中的'o'进行切片,返回值是一个列表list并赋值给list1 print(list1) # 输出列表数据 print(type(list1)) # 输出数据类型:类型 print(len(list1)) # 输出列表长度(列表的数据个数) ''' 输出结果: hello word 猿说python python教程 <class 'str'> 28 ************************************************************ ['hello', 'word', '猿说python', 'python教程'] <class 'list'> 4 ************************************************************ ['hello word 猿说', 'ython ', 'ython教程'] <class 'list'> 3 ************************************************************ ['hell', ' w', 'rd 猿说pyth', 'n pyth', 'n教程'] <class 'list'> 5 '''
列表转为字符串需要使用**”.join()**方法,join() 方法可以直接将列表转为一个字符串,示例代码如下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ list1 = ["hello", "word", "猿说python", "python教程"] print(list1) # 输出字符串 print(type(list1)) # 输出数据类型: print(len(list1)) # 输出字符串长度 print("***"*20) # 小敲门:直接打印60个* #根据空格切片 str1 = "".join(list1) # 对字符串中的空格(' ')进行切片,返回值是一个列表list并赋值给list1 print(str1) # 输出列表数据 print(type(str1)) # 输出数据类型:类型 print(len(str1)) # 输出列表长度(列表的数据个数) ''' 输出结果: ['猿说python', 'word', 'python教程', 'hello'] <class 'list'> 4 ************************************************************ 猿说pythonwordpython教程hello <class 'str'> 25 '''
将字符串转为字典可以通过内置函数 eval() 完成,对于内置函数 eval() 的使用,在后面的文章还会有详细讲解,今天先简单了解一下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ # 注意单引号和双引号的配合使用 str1 = '{"name":"zhangsan","age":18,"sing_dog":False }' print(str1) print(type(str1)) print(len(str1)) print("***"*20) # 小敲门:直接打印60个* dict1 = eval(str1) # 强制将字符串str转为字典dict print(dict1) print(type(dict1)) print(len(dict1)) ''' 输出结果: {"name":"zhangsan","age":18,"sing_dog":False } <class 'str'> 46 ************************************************************ {'name': 'zhangsan', 'age': 18, 'sing_dog': False} <class 'dict'> 3 '''
将字典转为字符串可以直接通过**str()**类型强制转换即可,示例代码如下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ dict1 = {"name":"zhangsan","age":18,"sing_dog":False } print(dict1) print(type(dict1)) print(len(dict1)) print("***"*20) # 小敲门:直接打印60个* str1 = str(dict1) # 强制将字典dict转为字符串str print(str1) print(type(str1)) print(len(str1)) ''' 输出结果: {'name': 'zhangsan', 'age': 18, 'sing_dog': False} <class 'dict'> 3 ************************************************************ {'name': 'zhangsan', 'age': 18, 'sing_dog': False} <class 'str'> 50 '''
列表转为字典不能通过 dict()强制转换,但是可以通过内置函数**zip()**完成,具体代码如下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ list1 = ["hello", "word", "猿说python", "python教程"] list2 = ["a","b","c","d","e","f","g"] dict1 = dict(zip(list1,list2)) print(dict1) print(type(dict1)) print(len(dict1)) ''' 输出结果: {'hello': 'a', 'word': 'b', '猿说python': 'c', 'python教程': 'd'} <class 'dict'> 4 '''
注意:内置函数 zip 是将两个列表的数据两两组合形成键值对,构成字典;如果两个列表的长度不一致时,多出的元素在另一个列表无匹配的元素时就不展示多出的元素。
可以通过**list()**方法强制将字典中的 key 或者 value 转为列表,示例代码如下:
# !usr/bin/env python # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:Python字符串/列表/元组/字典之间的相互转换.py @Time:2021/3/23 07:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ dict1 = {"name":"zhangsan","age":18,"sing_dog":False } # 强制将字典dict中的keys转为列表 list1= list(dict1.keys()) print(list1) print(type(list1)) print(len(list1)) print("***"*20) # 小敲门:直接打印60个* # 强制将字典dict中的values转为列表 list2 = list(dict1.values()) print(list2) print(type(list2)) print(len(list2)) ''' 输出结果: ['name', 'age', 'sing_dog'] <class 'list'> 3 ************************************************************ ['zhangsan', 18, False] <class 'list'> 3 '''
未经允许不得转载:猿说编程 » Python 字符串/列表/元组/字典之间的相互转换