目录
一、数据类型
1.1 整数类型 int
整数可以表示为正数、负数和0
#整数可以表示为正数、负数和0 x = 10 y = -9 z = 0 print(x,type(x)) print(y,type(y)) print(z,type(z))
运行结果:
进制 | 基本数 | 逢几进一 | 表示形式 | 备注 |
---|---|---|---|---|
十进制 | 0,1,2,3,4,5,6,7,8,9 | 10 | 11 | 默认的进制 |
二进制 | 0,1 | 2 | 0b111111 | 以0b开头 |
八进制 | 0,1,2,3,4,5,6,7 | 8 | 0o114 | 以0o开头 |
十六进制 | 0,1,2,3,4,5,6,7,8,9 A,B,C,D,E,F | 16 | 0x76 | 以0x开头 |
print("十进制:",11) print("二进制:",0b111111) print("八进制:",0o114) print("十六进制:",0x76)
运行结果:
1.2 浮点数类型 float
浮点数由整数部分和小数部分组成
浮点数存储不精确性:使用浮点数进行计算时,可能会出现小数位数不确定的情况,如下图:
解决方案:导入模块decimal
import decimal a = decimal.Decimal("1.2") b = decimal.Decimal("2.2") print(1.2+2.2) #输出结果:3.4000000000000004 print(a+b) #输出结果:3.4
1.3 布尔类型 bool
用来表示真或假的值
True 表示真,False 表示假
x = True y = False print(x,type(x)) print(y,type(y))
运行结果:
布尔值可以转化为整数,其中True 表示 1,False 表示 0
x = True y = False print(x+1) #运行结果为2,True表示1 print(y+1) #运行结果为1,False表示0
1.4 字符串类型 str
不可变的字符序列
可以使用单引号‘ ’,双引号“ ”,三引号‘‘‘ ’’’来定义
单引号的双引号定义的字符串必须在一行
三引号定义的字符串可以分布在连续的多行
str1 = '人生苦短 我用python' str2 = "人生苦短 我用python" str3 = '''人生苦短 我用python''' print(str1,type(str1)) print(str2,type(str2)) print(str3,type(str3))
运行结果:
二、类型转换
函数名 | 作用 | 注意事项 | 举例 |
---|---|---|---|
str() | 将其他数据类型转换成字符串 | 也可用引号转换 | str(123) '123' |
int() | 将其他数据类型转换成整数 | 1.文字类和小数类字符串,无法转换成整数 2.浮点数转换成整数:抹零取整 | int('123') int(9.8) |
float() | 将其他数据类型转换成浮点数 | 1.文字类无法转换成整数 2.整数转换成浮点数,末尾为.0 | float('9.9') float(9) |
2.1 str()将其他类型转换成字符串
#str()将其他类型转换为字符串 name = '小可爱' age = 18 print(type(name),type(age)) print('我叫'+name+'今年'+age+'岁')
运行结果:出现报错
解决方案:str()将其他类型转换成字符串
#str()将其他类型转换为字符串 name = '小可爱' age = 18 print(type(name),type(age)) #print('我叫'+name+'今年'+age+'岁')#出现报错 print('我叫'+name+'今年'+str(age)+'岁')#将age通过str()将int转换为str #运行结果 <class 'str'> <class 'int'> 我叫小可爱今年18岁
2.2 int()将其他类型转换成整数
#int()将其他类型转换为整数类型 x = '128' y = 98.5 z = '98.4' m = True n = 'Hello' print(type(x),type(y),type(z),type(m),type(n)) #运行结果为<class 'str'> <class 'float'> <class 'str'> <class 'bool'> <class 'str'> print(int(x),type(int(x)))#运行结果为128,整数字符串可以通过int()转换为整数 print(int(y),type(int(y)))#运行结果为98,浮点数转换为整数,抹零取整 print(int(z),type(int(z)))#执行错误,小数类字符串,不可通过int()转换为整数 print(int(m),type(int(m)))#运行结果为1 print(int(n),type(int(n)))#执行错误,文字类字符串,不可通过int()转换成整数
2.3 float()将其他类型转换成浮点数
#float()将其他类型转换为整数类型
x = '128'
y = 98.5
z = '98.4'
m = True
n = 'Hello'
print(type(x),type(y),type(z),type(m),type(n))#<class 'str'> <class 'float'> <class 'str'> <class 'bool'> <class 'str'>
print(float(x),type(float(x)))#运行结果为128.0
print(float(y),type(float(y)))#运行结果为98.5
print(float(z),type(float(z)))#运行结果为98.4
print(float(m),type(float(m)))#运行结果为1.0
print(float(n),type(float(n)))#执行错误,文字类无法转换成浮点数