下面就给您讲解一下Python字符串、元组、列表、字典互相转换的方法:
1. 字符串转列表、元组、字典
1.1 转列表
字符串转列表可以通过split()方法实现,该方法的作用是将字符串以指定的分隔符(默认为空格)分割成一个列表。示例如下:
str1 = 'a,b,c,d,e'
list1 = str1.split(',')
print(list1)
输出结果为:['a', 'b', 'c', 'd', 'e']
1.2 转元组
字符串转元组可以通过split()方法和tuple()方法实现,先通过split()方法将字符串转换成列表,然后再通过tuple()方法将列表转换成元组。示例如下:
str2 = '1,2,3,4,5'
list2 = str2.split(',')
tuple1 = tuple(list2)
print(tuple1)
输出结果为:('1', '2', '3', '4', '5')
1.3 转字典
字符串转字典可以通过eval()函数和字典推导式实现,先通过eval()函数将字符串转换成字典,然后可以用字典推导式来重新创建一个字典。示例如下:
str3 = "{'name':'Tom','age':18,'gender':'male'}"
dict1 = eval(str3)
dict2 = {k:v for k,v in dict1.items()}
print(dict1)
print(dict2)
输出结果为:{'name': 'Tom', 'age': 18, 'gender': 'male'}
2. 列表转字符串、元组、字典
2.1 转字符串
列表转字符串可以通过join()方法实现,该方法将列表拼接成一个字符串,并且可以在每个元素之间指定一个分隔符。示例如下:
list3 = ['a', 'b', 'c', 'd', 'e']
str4 = ','.join(list3)
print(str4)
输出结果为:'a,b,c,d,e'
2.2 转元组
列表转元组可以直接通过tuple()方法实现。示例如下:
list4 = ['1', '2', '3', '4', '5']
tuple2 = tuple(list4)
print(tuple2)
输出结果为:('1', '2', '3', '4', '5')
2.3 转字典
列表转字典可以通过enumerate()函数来获取元素的下标,然后可以用字典推导式将列表转换成字典。示例如下:
list5 = ['name', 'Tom', 'age', 18, 'gender', 'male']
dict3 = {list5[i]:list5[i+1] for i in range(0,len(list5),2)}
print(dict3)
输出结果为:{'name': 'Tom', 'age': 18, 'gender': 'male'}
3. 元组转字符串、列表、字典
元组与列表转换时的方法相同,不再赘述,这里只讲一下元组转字典的方法。
3.1 转字典
元组转字典可以通过zip()函数和字典推导式实现,因为zip()函数可以将元组中的两个元素组合成一个键值对,示例如下:
tuple3 = ('name','Tom','age',18,'gender','male')
dict4 = {k:v for k,v in zip(tuple3[0::2],tuple3[1::2])}
print(dict4)
输出结果为:{'name': 'Tom', 'age': 18, 'gender': 'male'}
4. 字典转字符串、列表、元组
4.1 转字符串
字典转字符串可以通过str()函数实现,该函数将字典对象转换成字符串形式。示例如下:
dict5 = {'name': 'Tom', 'age': 18, 'gender': 'male'}
str5 = str(dict5)
print(str5)
输出结果为:{'name': 'Tom', 'age': 18, 'gender': 'male'}
4.2 转列表
字典转列表可以通过keys()方法、values()方法和items()方法来实现。示例如下:
dict6 = {'name': 'Tom', 'age': 18, 'gender': 'male'}
list6_1 = list(dict6.keys())
list6_2 = list(dict6.values())
list6_3 = list(dict6.items())
print(list6_1)
print(list6_2)
print(list6_3)
输出结果为:['name', 'age', 'gender'],['Tom', 18, 'male'],[('name', 'Tom'), ('age', 18), ('gender', 'male')]
4.3 转元组
与转列表类似,字典转元组也可以通过keys()方法、values()方法和items()方法来实现。示例如下:
dict7 = {'name': 'Tom', 'age': 18, 'gender': 'male'}
tuple4_1 = tuple(dict7.keys())
tuple4_2 = tuple(dict7.values())
tuple4_3 = tuple(dict7.items())
print(tuple4_1)
print(tuple4_2)
print(tuple4_3)
输出结果为:('name', 'age', 'gender'),('Tom', 18, 'male'),(('name', 'Tom'), ('age', 18), ('gender', 'male'))
以上就是Python字符串、元组、列表、字典互相转换的方法的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python字符串、元组、列表、字典互相转换的方法 - Python技术站