python数据类型相互转换
1.数字
# 数字转为字符串 print(str(10))
2.字符串
1 # 数字转为字符串 2 print(str(10)) 3 4 # 2.字符串 5 # 字符串转数字 6 res = int('10') 7 print(res) 8 res = int('-3') 9 print(res) 10 res = float('.15') 11 print(res) 12 res = float('-.15') 13 print(res) 14 res = float('-3.15') 15 print(res) 16 # 字符串转列表 17 s = 'abc123呵呵' 18 print(list(s)) # ['a', 'b', 'c', '1', '2', '3', '呵', '呵'] 没有对应的 str(ls) 19 s1 = 'a b c 1 2 3 呵 呵' 20 res = s1.split() # 默认按空格拆 21 print(res) 22 23 # 字符串转字典 24 user_info = '{"name" : "john", "gender" : "male", "age": 28}' 25 import json 26 27 print(json.loads(user_info)) # json中数组或对象之中的字符串必须使用双引号,不能使用单引号 28 print(eval(user_info)) # 不安全 29 import ast 30 31 print(ast.literal_eval(user_info)) # 安全
3.列表
1 # 列表转字符串 2 ls = ['a', 'b', 'c', '1', '2', '3', '呵', '呵'] 3 n_s = ''.join(ls) 4 print(n_s) 5 # 列表转字典 6 a = [[1, (1, 2)], [3, 4]] 7 print(dict(a)) 8 9 # 两个列表转字典 10 a = [1, 2, 3, 4] 11 b = [5, 6, 7, 8, 9, 10] 12 # 方式1 13 dic1 = {} 14 for i in range(min(len(a), len(b))): 15 dic1[a[i]] = b[i] 16 print(dic1) 17 18 # 方式2 19 print(dict(zip(a, b)))
4.元组
# tuple与list、set直接相互转化 - 直接 类型()
5. 字典
1 # 字典转换为两个数组 2 dic2 = {1: 5, 2: 6, 3: 7, 4: 8} 3 a = [] 4 b = [] 5 for k, v in dic2.items(): 6 a.append(k) 7 b.append(v) 8 print(a) 9 print(b)