@TOC
type
可以使用type内置函数查看变量所指的对象类型
a=1
b=1.0
c="1"
d=1,
e=[1]
f={1:1}
g={1}
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
print(type(f))
print(type(g))
isinstance
**如字面意思,isinstance()
**来对一个数据类型询问是否是某个类型
a = 123654
print(isinstance(a,int))# -->True
print(isinstance(a,float))# -->False
python3支持int,float,bool,complex(复数)
注:没有double long longint…
不同于C语言,数字可以表示非常大
print(2**200)
Python中的字符串 是用''
和" "
这两种引号引起来的内容
'我是一个字符串'
"我也是一个字符串"
Python中的元组是一种不可变的顺序表
Python中的列表是一种可变的顺序表
字典是一种键值对
集合是一种值的集合
数据类型分为1.隐式类型转换 2.显式类型转换
在隐式类型转换中,Python会自动将一种数据类型转换为另一种数据类型,不需要认为去干预
比如在进行算术运算的时候,较低数据类型(整数)就会转换为较高的数据类型(浮点数)以免数据丢失
a = 1
b = 1.5
c = a+b
print(type(c))
但是如果我们使用 数字
和 字符串数字
进行相加呢
str = "231"
a = 123
print(a+str)
竟然没有转换成功,于是我们可以通过显示类型转换来解决这个问题
? 我们只需要简单的把上述式子改为下面式子
str = float("231")
a=123
print(a+str) #-->float
如此转换就符合我们的预期
转换成整数
采用int(x,[,base])
可以将对象x转换成一个十进制的整数[,base]指的是x为几进制,然后我们转化为十进制去表示
a = int("1100",2)
b = int("65",10)
c = int("0x1f",16)
print(a)
print(b)
print(c)
注:进制要注意匹配,比如65,它至少时七进制,不可能是5进制,二进制…,
在python中最大进制是在[2,36]的区间
转换为浮点数
采用float(x)
将对象转换为一个浮点数,如下
a = float("2153545.135453")
print(a)
运行结果:
转为复数
采用complex(real,[,image])
,可以创建一个复数,如下
a = complex(20,10)
print(a)
转换成字符串
采用str(x)k可以将x转换成一个字符串,如下
a = 10000.765
c = str(a) # 注意最好不要使用str去做标识符,不然会报错
print(c)
转换成表达式字符串
采用repr(x)
可以将x转化成表达式字符串,如下
a = '10000.765'
b = repr(a)
c = str(a)
print(b)
print(c)
字符转换
整数转字符
可以利用chr(x),把x转化为字符,对应的Ascll码
字符转整数
可以利用ord(x)将字符x转换为一个整数,他是chr(x)的逆运算
转化成基础数据结构
转化为元组
tuple(s)
转换为列表
list(s)
转换成可变集合
set(s)
转换成不可变集合
frozenset(s)
转换成字典
dict(d)