1. 用type()内置函数查看数据类型
1.1 查看数据的类型:type()
可以将任何对象作为参数传入type()函数,它会返回该对象的数据的类型
语法格式:type(object) # 其中object是要确定类型的对象
例如:
num = 10
print(type(num)) # 输出<class 'int'>
str_val = "hello"
print(type(str_val)) # 输出<class 'str'>
lst = [1,2,3]
print(type(lst)) # 输出<class 'list'>
注意:变量本身没有类型,但储存在变量中的数据有类型,所以type()输出的是变量中存储的数据的类型
name = "学python的小黑"
name_type = type(name)
print(name_type)
1.2 判断数据的类型:isinstance()
isinstance()用于判断一个对象是否是某个类或某些类的实例,可以判断一个对象是否属于某种数据类型
语法格式:isinstance(object,classinfo)
object:要判断的对象
classinfo:可以是一个类对象、由类对象组成的元组或是其他可被识别类型的对象
#例1
class MyClass:
pass
obj = MyClass()
print(isinstance(obj,MyClass)) # obj如果是MyClass类型则返回True,不是则返回False
#例2
num = 10
if isinstance(num,int):
print("num是整数类型")
2. 数据类型的转换
2.1 整数与浮点数之间的转换
使用int()可以将浮点数转换为整数,在转换的过程中会丢失精度(只保留整数部分)
使用float()可以将整数转换为浮点数
例如:
# 例1
num_int = 10
num_float = float(num_int)
print(num_float) # 输出结果是10.0
# 例2
num_float = 10.8
print(int(num_float)) # 输出结果10
2.2 字符串与数字之间的转化
用str()可以将数字类型转换为字符串类型
数字类型可以无条件的转换为字符串类型,但只有纯数字的字符串类型才能转换为数字类型
例如:
# 例1
num_float = 10.2
str_float = str(num_float)
print(str_float,type(str_float)) # 输出结果
# 例2
str_num = "10.4"
float_num = float(str_num)
print(float_num,type(float_num))
2.3 列表,元组和集合之间的转换
列表转元组:tuple()
元组转列表:list()
列表转集合:set()
集合转列表:list()
例如:
# 例1
my_list = [1, 2, 3]
my_tuple = tuple(my_list)
print(my_tuple) # 输出 (1, 2, 3)
# 例2
my_tuple = (1, 2, 3)
my_list = list(my_tuple)
print(my_list) # 输出 [1, 2, 3]
# 例3
my_list = [1, 2, 2, 3]
my_set = set(my_list)
print(my_set) # 输出 {1, 2, 3}
# 例4
my_set = {1, 2, 3}
my_list = list(my_set)
print(my_list) # 输出 [1, 2, 3]