“Python数字类型”的版本间的差异
来自CloudWiki
第1行: | 第1行: | ||
+ | ==数字类型== | ||
+ | Python语言提供3种数字类型:整数类型、浮点数类型和复数类型,分别对应数学中的整数、实数和复数。 | ||
+ | |||
+ | n 1010是一个整数类型,10.10是一个浮点数类型, | ||
+ | |||
+ | 10 + 10j是一个复数类型。 | ||
+ | |||
==整数类型== | ==整数类型== | ||
*python的整数类型与数学中整数的概念一致。 | *python的整数类型与数学中整数的概念一致。 | ||
1010,99,-217,0x9a,-0x89 | 1010,99,-217,0x9a,-0x89 | ||
*整数类型一共有四种进制表示十进制二进制,八进制和16进制。 | *整数类型一共有四种进制表示十进制二进制,八进制和16进制。 | ||
+ | *什么是二进制、十进制、八进制、十六进制 ? | ||
*二进制数以0b引导,八进制数,以0o引导,16进制数以0x引导。 | *二进制数以0b引导,八进制数,以0o引导,16进制数以0x引导。 | ||
*pow(x,y)函数 | *pow(x,y)函数 | ||
第20行: | 第28行: | ||
8</nowiki> | 8</nowiki> | ||
==浮点数类型== | ==浮点数类型== | ||
− | + | ===什么是浮点数=== | |
+ | 带有小数点及小数的数字。 | ||
+ | |||
+ | Python语言中的浮点数类型必须带有小数部分,小数部分可以是0。 | ||
+ | |||
+ | 例如:1010是整数,1010.0是浮点数。 | ||
+ | |||
+ | ===浮点数类型=== | ||
+ | n 浮点数有2种表示方法:十进制形式的一般表示和科学计数法表示。 | ||
+ | |||
*浮点数有两种表示方法。十进制表示和科学计数法表示。 | *浮点数有两种表示方法。十进制表示和科学计数法表示。 | ||
+ | |||
0.0 -77. -2.17 3.1416 96e4 4.3e-3 9.6E5 | 0.0 -77. -2.17 3.1416 96e4 4.3e-3 9.6E5 | ||
+ | |||
+ | 除十进制外,浮点数没有其他进制表示形式。 | ||
+ | |||
+ | 十进制表示的例子: | ||
+ | |||
+ | 1010.0, -1010. | ||
+ | |||
+ | 科学计数法使用字母e或者E作为幂的符号,以10为基数,含义如下: | ||
+ | |||
+ | <nowiki><a>e<b> = a*10b</nowiki> | ||
+ | |||
+ | 上例中,1.01e3值为1010.0;-1.01E-3值为0.00101。 | ||
+ | |||
+ | Python浮点数类型的数值范围和小数精度受不同计算机系统的限制。除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”。 | ||
+ | |||
+ | <nowiki>>>>1234567890.987654321 * 1234567890.987654321 | ||
+ | 1.5241578774577044e+18 | ||
+ | >>>9876543210.123456789 / 1234567890.987654321 | ||
+ | 7.000000066600002</nowiki> | ||
+ | |||
+ | |||
+ | |||
*通过下面这条语句可以对浮点数进行赋值。 | *通过下面这条语句可以对浮点数进行赋值。 | ||
<nowiki>>>> b = 3.1416 | <nowiki>>>> b = 3.1416 | ||
第38行: | 第78行: | ||
</nowiki> | </nowiki> | ||
− | + | ===不确定尾数问题=== | |
python浮点数计算 存在一个“不确定尾数”问题: | python浮点数计算 存在一个“不确定尾数”问题: | ||
第48行: | 第88行: | ||
</nowiki> | </nowiki> | ||
− | + | 解决办法:保留确定的小数位数 | |
<nowiki>>>> round(1.2346,2) | <nowiki>>>> round(1.2346,2) | ||
第54行: | 第94行: | ||
>>> round(0.1+0.2,3) ==0.3 | >>> round(0.1+0.2,3) ==0.3 | ||
True</nowiki> | True</nowiki> | ||
+ | |||
==复数类型== | ==复数类型== | ||
+ | 复数类型表示数学中的复数。复数有一个基本单位元素j,叫作“虚数单位”。 | ||
+ | |||
+ | 含有虚数单位的数被称为复数。例如: | ||
+ | |||
+ | 11.3+4j -5.6+7j 1.23e-4+5.67e+89j | ||
+ | |||
+ | Python语言中,复数可以看作是二元有序实数对(a, b),表示为:a + bj, | ||
+ | |||
+ | 其中,a是实数部分,简称实部,b是虚数部分,简称虚部。 | ||
+ | |||
*Python语言中,复数的虚数部分通过后缀“J”或“j"来表示 | *Python语言中,复数的虚数部分通过后缀“J”或“j"来表示 | ||
+ | |||
>>> z =4 +5j | >>> z =4 +5j | ||
>>> z.real | >>> z.real | ||
第62行: | 第114行: | ||
>>> z.imag | >>> z.imag | ||
5.0 | 5.0 | ||
+ | |||
+ | 需要注意,当b为1时,1不能省略,即 1j表示复数, | ||
+ | |||
+ | 而j则表示Python程序中的一个变量。 |
2020年3月1日 (日) 10:25的版本
数字类型
Python语言提供3种数字类型:整数类型、浮点数类型和复数类型,分别对应数学中的整数、实数和复数。
n 1010是一个整数类型,10.10是一个浮点数类型,
10 + 10j是一个复数类型。
整数类型
- python的整数类型与数学中整数的概念一致。
1010,99,-217,0x9a,-0x89
- 整数类型一共有四种进制表示十进制二进制,八进制和16进制。
- 什么是二进制、十进制、八进制、十六进制 ?
- 二进制数以0b引导,八进制数,以0o引导,16进制数以0x引导。
- pow(x,y)函数
>>pow(2,100)
>>> s=123 >>> print(s) 123 >>> b= -25 >>> print(b) -25 >>> d= s+b >>> print(d) 98 >>> d=pow(2,3) >>> print(d) 8
浮点数类型
什么是浮点数
带有小数点及小数的数字。
Python语言中的浮点数类型必须带有小数部分,小数部分可以是0。
例如:1010是整数,1010.0是浮点数。
浮点数类型
n 浮点数有2种表示方法:十进制形式的一般表示和科学计数法表示。
- 浮点数有两种表示方法。十进制表示和科学计数法表示。
0.0 -77. -2.17 3.1416 96e4 4.3e-3 9.6E5
除十进制外,浮点数没有其他进制表示形式。
十进制表示的例子:
1010.0, -1010.
科学计数法使用字母e或者E作为幂的符号,以10为基数,含义如下:
<a>e<b> = a*10b
上例中,1.01e3值为1010.0;-1.01E-3值为0.00101。
Python浮点数类型的数值范围和小数精度受不同计算机系统的限制。除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”。
>>>1234567890.987654321 * 1234567890.987654321 1.5241578774577044e+18 >>>9876543210.123456789 / 1234567890.987654321 7.000000066600002
- 通过下面这条语句可以对浮点数进行赋值。
>>> b = 3.1416 >>> b 3.1416 >>> b = 10e5 >>> b 1000000.0 >>> a=3.1415 >>> print(a) 3.1415 >>> b= 6.3+a >>> print(b) 9.4415
不确定尾数问题
python浮点数计算 存在一个“不确定尾数”问题:
>>> 0.1+0.2 0.30000000000000004 >>> 0.1+0.2 == 0.3 False
解决办法:保留确定的小数位数
>>> round(1.2346,2) 1.23 >>> round(0.1+0.2,3) ==0.3 True
复数类型
复数类型表示数学中的复数。复数有一个基本单位元素j,叫作“虚数单位”。
含有虚数单位的数被称为复数。例如:
11.3+4j -5.6+7j 1.23e-4+5.67e+89j
Python语言中,复数可以看作是二元有序实数对(a, b),表示为:a + bj,
其中,a是实数部分,简称实部,b是虚数部分,简称虚部。
- Python语言中,复数的虚数部分通过后缀“J”或“j"来表示
>>> z =4 +5j >>> z.real 4.0 >>> z.imag 5.0
需要注意,当b为1时,1不能省略,即 1j表示复数,
而j则表示Python程序中的一个变量。