2023-11-03
温故知新
00
请注意,本文编写于 402 天前,最后修改于 337 天前,其中某些信息可能已经过时。

目录

简介
Python数值类型
基本运算
加减乘除
整数
浮点数
复数
双除 && 模除
整数
函数divmod
函数abs
整数 / 浮点数
复数
函数int
函数float
函数complex
函数pow和运算符**

简介

本文用于记录Python基础数据类型的的定义和计算。

Python数值类型

  • 整数
python
a = 1;
  • 浮点数(小数)
python
a = 0.1;
  • 复数
python
a = 1 + 2j;

基本运算

加减乘除

整数

py
print(1 + 2) print(1 - 2) print(1 * 2) print(1 / 2)
  • 输出
3 -1 2 0.5

浮点数

py
print(0.1 + 0.2) print(0.1 - 0.2) print(0.1 * 0.2) print(0.1 / 0.2)
  • 输出
0.30000000000000004 -0.1 0.020000000000000004 0.5
  • 由输出可见,浮点数直接进行基本运算会存在误差,所以建议使用deciaml模块进行浮点数计算,如加法:
py
a = decimal.Decimal('0.1') b = decimal.Decimal('0.2') print(a + b)
  • JavaBigDecimal用法类似。
  • 输出
0.3

复数

py
c = 1 + 2j d = 2 + 1j print(c + d) print(c - d) print(c * d) print(c / d)
  • 输出
(3+3j) (-1+1j) 5j (0.8+0.6j)

双除 && 模除

整数

  • 一般只用于整数计算
  • 双除(//):也叫地板除,即向下取整。与Java中的/类似,但不完全相同。如Java中(-3 / 2)结果为-1,但Python中的(-3 // 2)结果为-2。由此可见,Java中更像是去掉小数点后的数字取整,而Python则是实际意义上的向下取整。
  • 模除(%):即取除法的余数。与Java中的计算结果完全一样。
py
print(3 // 2) print(-3 // 2) print(3 % 2) print(-3 % 2) print((-3 // 2) * 2 + (-3 % 2))
  • 输出
1 -2 1 1 -3

函数divmod

  • 同时计算出双除和模除的结果
py
print(divmod(3, 2)) print(divmod(-3, 2))
  • 输出
(1, 1) (-2, 1)

函数abs

  • 计算绝对值

整数 / 浮点数

py
print(abs(-3)) print(abs(-3.1))
  • 输出
3 3.1

复数

  • 计算负数的模
py
c = 1 + 2j print(abs(c))
  • 输出
2.23606797749979

函数int

  • 将浮点数/字符串转化为整数
  • 如果参数是字符串,必须是整数字符串,否则报错ValueError: invalid literal for int() with base 10
  • 如果参数是浮点数,则直接去掉小数后数字取整
py
print(int('1')) print(int(9.99)) print(int(9))
  • 输出
1 9 9

函数float

  • 将字符串 / 整数转化为浮点数
py
print(float('1')) print(float('1.20')) print(float(1.20)) print(float(1))
  • 输出
1.0 1.2 1.2 1.0

函数complex

  • 将字符串转为复数,注意字符串不能有空格
py
print(complex("1-2j"))
  • 输出
(1-2j)

函数pow和运算符**

  • 幂运算
  • pow(x, y)含义:x 的 y 次幂,等价于 x ** y
  • pow(x, y, n)含义:x 的 y 次幂,再除以n取余
py
print(pow(2, 3)) print(pow(2, 3, 5)) print(2 ** 3) print(2 ** 3 % 5)
  • 输出
8 3 8 3
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:DingDangDog

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!