数据类型
内置类型:
数值类型:整型int,浮点型float,复数(complex) 3+5j
字符串:str
布尔值[True,False]:bool
空值,表示变量没有确定的值
列表:list
元组:tuple
字典:dict
集合:set
自定义类型:
class
数据类型的转换
函数名 | 函数值 |
---|---|
int(x) | 将x转换为int类型 |
float(x) | 将x转换成浮点型 |
str(x) | 将x转换成字符串 |
bool(x) | 转换成bool类型 的True False |
dict(x) | 将序列x转换成字典 |
list(x) | 将序列x转换成列表 |
set(x) | 将序列x转换成集合 |
tuple(x) | 将序列x转换成元组 |
布尔值
在python中,能够解释为假的值有:None、0、0.0、False、所有的空容器(空列表、空元组、空字典、空集合、空字符串),其它是真
数据类型判断
我们可以用type和isinstance来测试和判断数据类型
1,type用法:
type(obj)
功能:返回obj的数据类型
参数:obj是你要测试变量或数值
示例:
age = 10
name = ‘hello’
print(type(name),type(age))
判断变量是否是指定类型
if type(age) is int:
print('是')
else:
print('否')
2,isinstance用法:
isinstance(obj,typename)
功能:判断obj是否是指定类型,是返回True,否返回False
参数: objobj是你要判断的变量或数值
typename是指定数据类型,可以是int,float,str等。也可是一个类型的元组,例如:(int,float)
示例:
age = 10
name = 'hello'
print(isinstance(age,int))
print(isinstance(name,(str,int))#只要name是str或int的一种就返回True
if ininstance(agr,int):
print('是')
else:
print('否')
type和isinstance的区别
type判断基本类型是没有问题的,但无法判断子类
isinstance可以判断子类
class A:
pass
class B(A):
pass
objA = A()
objB = B()
#输出否
if type(objB) is A:
proint('是')
else:
print('否')
print(ininstance(objB,A)) #True