首页 > 开发 > Python > 正文

Python中的Numbers:int,float和complex

2023-04-27 19:03:17
字体:
来源:转载
供稿:网友

Python中的Number用于程序中存储数值类型,Python中的数字有三种类型:int,float和complex。在Python2中有long类型,但在Python3中不再提倡使用long类型。

在Python中可以直接将数字赋值给变量,则就会定义一个数值类型的变量。

x = 5
y = 12.34
z = 3 + 2j

上面就定义了三个Numbers,分别为int类型,float类型和复数类型。

Python中的Numbers

1、int类型

int类型即整数类型,包括正整数,0和负整整,不能包含小数点。

int类型默认为10进制的,我们也可以在程序中使用二进制、八进制和十六进制的整型数字。

二进制以 0b 开始,后面的数字只能是0或1;

八进制以 0o开始,后面的数字只能是0到7的八个数,使用超出7的数字会报错;

十六进制以 0x开始,后面的数字是有0-9十个数字和A-F六个字母构成,字母大小写无所谓。

a = 0b1001  #二进制形式
print(a)  #输出 9

b = 0o17  #八进制形式
print(b)  #输出15

c = 0x9F  #十六进制形式
print(c)  #输出 159

上面描述的情形如下图所示:

Python中的二进制、八进制和十六进制整数

2、float类型

float类型是含小数点的数字。包括正负浮点数。也可以使用“e”或“E”来定义科学计数法的浮点数。

x = 1.2E3
print(x)  #输出1200.0

y = 12.34e3
print(y) #输出12340.0

上面的 1.2E3 相当于 1.2*(10*10*10) = 1200.0

Python中的科学计数法

3、complex类型

复数类型有两部分组成:实部和虚部,复数的虚部在Python中使用j来做后缀。上面的例子中,3位实部,2为虚部。

在程序中可以使用complex()函数来创建一个复数或将一个字符串转换为复数类型。

x = complex(1, 2)
print(x)

y = complex(1)
print(y)

z = complex(-1, -2.4)
print(z)

x = complex("-2+3j")
print(x)

x = complex("-2 + 3j")  #会报错ValueError:complex() arg is a malformed string #畸形字符串
print(x)

以上在Python IDLE中的执行情况如下图:

Python中complex()函数的用法

上面执行结果中,最后一个出现错误,原因在于字符串中间有空格,也就是说将一个复数字符串转换为复数时,中间不允许有任何的空白字符。

4、数据类型间的转换

在Python程序中,可以将int类型转换为float类型,也可以将float类型转换为int类型;可以将int类型或float类型转换为complex类型,但不能把complex转换为int类型或float类型。在把int类型或float类型转换为complex类型时,其虚部为“0j”。

转换时可以使用int(),float()和complex()函数来实现。

i = 5
f = 3.5
itf = float(i)
print(itf)

fti = int(f)
print(fti)

itc = complex(i)
print(itc)

ftc = complex(f)
print(ftc)

以上在python IDLE 中的执行情况如下图:

5、数据类型的判断

我们可以使用type()函数来判断一个变量所属的类型:

x = 5
y = 12.34
z = 3 + 2j
print(type(x))  #<class 'int'> 即int类型的对象
print(type(y)) #<class 'float'>
print(type(z)) #<class 'complex'>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表