var1 = 45
var2 = 6.78
var3 = "12345676"
var4 = "nihao223"
var5 = 88-2j
var6 = True
var7 = False
#int 强制类型转换整型 True强转int是1 False强转是int 是 0
#int 转字符串时只能强转纯字符串。
res = int(var2)
print(res)
res = int(var6)
print(res)
res = int(var7)
print(res)
res = int(var3)
print(res)
# res = int(var) 报错
# res = int(var) 报错
# float 强制转换成浮点型
res = float(var1)
print(res)
res = float(var3)
print(res)
res = float(var6)
print(res)
res = float(var7)
print(res)
# float强转字符串时也是一样的的结果,大家最好试一下
# complex 强制转换成复数
res = complex(var1)
print(res)
res = complex(var2)
print(res)
res = complex(var3)
print(res)
res = complex(var6)
print(res)
res = complex(var7)
print(res)
#一定要试一下看一下结果
# bool 强制转换成布尔类型 *****
res = bool(var1)
print(res)
res = bool(var4)
print(res)
res = bool(var5)
print(res)
res = bool({1,2,3})
print(res)
res = bool(None)
print(res)
# 通过bool强制转换为假的10个数据
'''
0 , 0.0 , 0j ,False , [] ,() , "" ,set() ,{} , None
None 是一个关键字 本身代表空的 什么也没有
'''
'''
int() float() bool() complex() 默认声明一个当前类型的数据
'''
a = int()
b = float()
c = bool()
d = complex()
print(a,b,c,d)
str(容器类型数据 / Number类型数据都可以)
只是基于原来的数据类型两边套上引号
var1 = "周芷若真漂亮"
var2 = ["周杰伦","陈奕迅"]
var3 = ("王宝强","马容","宋讲师")
var4 = {"红色的帽子","蓝色的帽子","绿色的帽子"}
var5 = {"A":"昨天请假了","B":"世界上最美的不过是回眸一笑","C":"每次看你,都都出了猥琐的小眼神"}
var6 = 5488
res = str(var2)
print(res)
res = str(var3)
print(res)
res = str(var4)
print(res)
res = str(var5)
print(res)
res = str(var6)
print(res,type(res))
print(repr(res)) #原型化输出字符串
#因为上面的输出都不是按照你想的方式输出的
#举个例子
res = str(var2)
print(res, type(res))
print(repr(res))
#额这个我还是输出结果给看下 不过我不会插入图片.....
['周杰伦', '王文'] <class 'str'>
"['周杰伦', '王文']"
list 列表强转其他类型
如果是列表强转字符串 ,把字符串中的每一个字符都当成新的元素放入列表当中
如果是其他容器类型数据,仅仅在套一个[],作为列表标识 字典单独记 只要键 不要值
res = list(var1)
res = list(var3)
res = list(var4)
res = list(var5) # 强转字典时,只保留键,舍弃值
print(res)
tuple元组强转其他类型
如果是元组强转字符串 ,把字符串中的每一个字符都当成新的元素放入元组当中
如果是其他容器类型数据,仅仅在套一个()作为元组标识 字典单独记 :只要键 ,不要值。
res = tuple(var1)
print(res)
res = tuple(var2)
print(res)
res = tuple(var4)
print(res)
res = tuple(var5)
print(res)
set字典强转其他类型
如果是集合强转字符串 ,把字符串中的每一个字符都当成新的元素放入集合当中,但是注意集合无序 , 自动去重
如果是其他容器类型数据,仅仅在套一个{},作为集合标识 字典单独记 只要键 不要值 注意集合无序 , 自动去重
res = set(var1)
print(res)
res = set(var2)
print(res)
res = set(var3)
print(res)
res = set(var5)
print(res)
res = set()
print(res)
对列表进行去重
listvar = ["宋哲","弧形","流经","高挑胡","高挑胡","高挑胡"]
setvar = set(listvar)
listvar2 = list(setvar)
print(listvar2)
二级列表
列表里边还是个列表可以通过索引的方式查找列表元素。
listvar = [1,2,3,4,[5,6,7,8]]
res = listvar[-1][-1]
print(res)
二级元组:
tuplevar = (11,222,33,44,(1,2,3),55)
res = tuplevar[4][1]
print(res)
二级集合:
setvar = {1,2,3,4,(5,6,7,8)}
# 集合里面放的数据需要可哈希(不可变的)的数据
print(setvar)
#当把里边的元组改成列表时就会报错
#TypeError: unhashable type: 'list'
二级字典:
dictvar = {"a":{"c":444},"b":{"d":5555}}
res = dictvar["b"]
print (res)
res = dictvar["b"]['d']
print(res)
四级容器:
listvar = [1,2,3,4,[5,56,7,89,(99,101,103,1555,{"a":1,"b":2})]]
res = listvar[-1][-1][-1]['a']
print(res)
等长的二级容器 : 里面都是容器类型数据,每个容器里面元素个数都一样
listvar = [(1,2,3),(4,5,6)]
listvar2 = ([1,2],[4,5],[11,99])
强转字典的容器数据类型 必须是等长的二级容器,并且里面元素的个数是2个。
(1)外面是列表 , 里面是列表或元组或字符串 (不推荐字符串,有局限性)
因为出现3个字符串会出现匹配问题。容易报错
listvar = [("a",1),("b",2)]
res = dict(listvar)
print(res)
listvar = [["c",3],("d",4)]
res = dict(listvar)
print(res)
listvar = ["e1","f2"]
res = dict(listvar)
print(res)
listvar = [('a1',1),['b2',2],"c3"]
res = dict(listvar)
print(res)
(2)外面是元组 , 里面是列表或元组或字符串 (不推荐字符串,有局限性)
tuplevar = (["ccc",111],('aaaa',2222))
res = dict(tuplevar)
print(res)
(3)外面是集合,里面是元组或字符串
setvar = {('a',11),('b',22),"c3"}
dictvar = dict(setvar)
print(dictvar)
不推荐使用集合,因为集合无序,达不到想要的效果(会无序,也就是随意匹配了)
listvar = [{"a",1},{"b",2}]
tuplevar = ({"a",1},{"b",2})
dictvar = dict(listvar)
dictvar = dict(tuplevar)
print(dictvar)
str() list() tuple() set() dict() 都可以强转成对应的类型
res = str()
print(repr(res))
res2 = list()
print(res2)
res3 = tuple()
res3 = set()
res3 = dict()
print(res3)