知行编程网知行编程网  2022-10-20 21:00 知行编程网 隐藏边栏  25 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于Python数值类型(整形、浮点型和复数)及其用法的相关知识,包括啥叫浮点型,以及浮点型变量分为这些编程知识,希望对大家有参考作用。

Python 数值类型(整数、浮点数和复数)及其用法

数值类型是最常用的计算机程序类型。可用于记录各种游戏的分数、游戏角色的生命值和伤害值等,以及各种物品的价格和数量。 Python 提供各种 Numeric 类型支持,例如对整数、浮点数和复数的支持。


Python整型

Python 3 的整数支持多种整数值。无论是小整数值还是大整数值,Python都能轻松处理(不像某些语言,short、int、long等整数增加了开发难度)。

例如如下代码:

#定义变量a,赋值为56
a = 56
print(a)
#为a赋值一个大整数
a = 9999999999999999999999
print(a)
#type()函数用于返回变量的类型
print(type (a))

上述程序中的粗体代码将999999999999999999999大整数赋给变量a,Python不会出现溢出等问题,程序运行正常。像什么字节这样的细节。

使用 Python 3.x 运行上面程序,可以看到如下输出结果:

56
9999999999999999999999
<class 'int'>

从上面的输出结果可以看出,此时 a 依然是 int 类型。

但是如果你用 Python 2.x 运行上面的程序,你可以看到如下输出:

56
9999999999999999999999
<type 'long'>

对比两个输出结果,不难发现:无论是 Python 3.x 还是 Python 2.x,Python 都可以正常处理大整数,但是 Python 2.x 底层会把大整数当做 long 类型,但开发人员通常不需要担心这些细节。

Python 的整型支持 None 值(空值),例如如下代码:

a = None
print(a)

Python中有四种整数值的表示形式: 十进制形式:最常见的整数是十进制形式的整数。二进制形式:以 0b 或 0B 开头的整数是二进制形式的整数。八进制形式:以 0o 或 0O 开头的整数是八进制形式的整数(第二个字母为大写或小写 O)。十六进制形式:以0x或0X开头的整数是十六进制形式的整数,其中10到15用a~f表示(这里a~f不区分大小写)。

下面代码片段使用了其他进制形式的数:

#以0x或0X开头的整型数值是十六进制形式的整数
hex_value1 = 0x13
hex_value2 = 0xaF
print("hexValue1 的值为:",hex_value1)
print("hexValue2 的值为:",hex_value2)
#以0b或0B开头的整型数值是二进制形式的整数
bin_val = 0b111
print('bin_val的值为:',bin_val)
bin_val = 0B101
print('bin_val的值为:',bin_val)
#以0o或0O开头的整型数值是八进制形式的整数
oct_val = 0o54
print('oct_val 的值为:',oct_val)
oct_val = 0O17
print('oct_val 的值为:',oct_val)

为了提高数值(包括浮点型)的可读性,Python 3.x 允许为数值(包括浮点型)增加下画线作为分隔符。这些下画线并不会影响数值本身。例如如下代码:

#在数值中使用下画线
one_million = 1000000
print(one_million)
price = 234_234_234 #price 实际的值为234234234
android = 12341234 #android 实际的值为12341234


Python浮点型

浮点数用于存储带小数点的值。 Python 的浮点数有两种表示形式:

十进制形式:这种形式是通常的简单浮点数,如 5.12、512.0、0.512。浮点数必须包含小数点,否则将被视为整数类型。

科学计数形式:例如 5.12e2(即 5.12×102)、5.12E2(也是 5.12 ×102)。

必须指出,只有浮点数才能用科学计数法表示。例如 51200 是一个整数值,但 512E2 是一个浮点值。

Python 不允许除以 0 。 Python 不允许除以 0,无论是整数还是浮点值。

下面的程序演示了上面介绍的关于浮点数的各种知识点:

af1 = 5.2345556
#输出af1的值
print("af1的值为:",af1)
af2 = 25.2345
print("af2的类型为:",type(af2))
f1=5.12e2
print("f1的值为:",f1)
f2 = 5e3
print("f2的值为:",f2)
print("f2的类型为:",type(f2))#看到类型为float

从最后一行加粗的代码可以看出,虽然5e3的值是5000,但它仍然是一个浮点值,而不是整数值,因为Python会自动将值改为5000.0。


复数

Python 甚至可以支持复数,复数的虚部用 j 或 J 来表示。

下面程序示范了复数的用法:

ac1 = 3 + 0.2j
print (ac1)
print(type(ac1)) #输出复数类型
ac2 = 4 - 0.1j
print(ac2)
#复数运行
print(ac1 + ac2) #输出(7+0.1j)
#导入cmath 模块
import cmath
#sqrt()是cmath 模块下的商数,用于计算平方根
ac3 = cmath.sqrt(-1)
print (ac3) #输出1j

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享