Python 3 数字(Number)、各运算符、数学函数一览表

Python基础知识:数字类型及数学函数详解 在开启Python系列学习之后,我们就大概讲了数字类型及数学函数的基础语法。这一篇博客,我们就将详细介绍Python中的数字类型、数学函数、随机数函数、三角函数以及数学常量,同时,为大家提供一些示例代码帮助大家更好地理解它们的用法。 阅读详情

目录

数字类型

int

float

complex

数字类型转换

转换成 int

转化成 float

转化为 complex

数字运算

算数运算符

赋值运算符

比较运算符

位运算符

逻辑运算符

成员运算符 

身份运算符

运算符优先级

数学函数

内置函数

math 模块


数字类型

数字 (Number) 由数字文字 (Numeric literals) 创建,或作为内置函数和运算符的结果创建。Python 支持三种不同的数字类型 (Numeric Types):intfloatcomplex

另外,fractions 模块包括额外的数字类型 fractions.Fraction,提供对有理数算术的支持。decimal 模块包括额外的数字类型 decimal.Decimal,用于具有用户可定义精度的浮点数。

int

整数,也可称为整型,可以用十进制、八进制、十六进制表示。py3 的整型 int 相当于 py2 的长整型 long,可以存放任意大小的整数,不存在溢出问题,所以 py3 不再有 long 类型。

bool(布尔)是 int 的子类型。

>>> num = 255    # Decimal
>>> num
255

>>> num = 0o255   # Oct
>>> num
173

>>> num = 0x255 # Hex
>>> num
597

>>> num = True  # bool
>>> num
True

float

浮点数,或叫浮点型,由整数和小数部分组成,也可以使用科学计数法表示(2.5e2 = 2.5 x 10^2 = 250)

Python 的浮点数通常使用C语言中的 double 实现。

sys.float_info 提供了机器浮点数的精度和内部表示的信息。

>>> num = 2.55
>>> num
2.55

>>> num = -2.55e10
>>> num
-25500000000.0

>>> import sys
>>> sys.float_info
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)

complex

复数,由实部和虚部构成,表示为 a + bj,或 complex(a,b) , 实部a和虚部b都是浮点数。要从复数 z 中提取实部和虚部,可以使用 z.real 和 z.imag。

>>> z = 2 + 3j
>>> z.real
2.0
>>> z.imag
3.0

数字类型转换

构造函数 int()float(), complex() 可用于生成特定类型的数字。

转换成 int

class int([x]) 返回由数字或字符串 x 构造的整数对象,如果没有给出参数,则返回 0。

class int(xbase=10) 如果 x 不是数字或给定了 base,那么 x 必须是字符串、字节或字节数组对象,表示以 base 为基数的整数。base 表示进制,可以是2, 8, 10, 16。

>>> int()
0
>>> int(2.22)    # float -> int
2
>>> int('10')  # str -> int (base=10)
10
>>> int('10', 16)  # str -> int (base=16)
16

转化成 float

class float([x]) 返回由数字或字符串 x 构造的浮点数。参数也可以是表示 NaN(非数字)或正负无穷大的字符串。

>>> float(2)
2.0
>>> float('2.22')
2.22
>>> float('nan')   # not-a-number
nan
>>> float('inf')   # positive infinity
inf
>>> float('-inf')  # negative infinity
-inf

转化为 complex

class complex([real[, imag]]) 返回值为 real + imag*1j 的复数或将字符串或数字转换为复数。如果第一个参数是一个字符串,它将被解释为一个复数,并且必须在没有第二个参数的情况下调用该函数。

>>> complex(2, 3)
(2+3j)
>>> complex('2+3j')  # the string must not contain whitespace around the central + or - operator
(2+3j)
>>> complex(2+3j)
(2+3j)

数字运算

python 解释器可以充当一个简单计算器,它会根据输入的表达式,输出对应的值。

>>> 1 + 1
2
>>> 2 + 2 * 2
6
>>> (2 + 2) * 2
8
>>> 6 / 2 # classic division returns a float
3.0
>>> 6 // 2 # floor division discards the fractional part
3
>>> 5 ** 2  # 5 squared
25
>>> 2 ** 7  # 2 to the power of 7
128

在交互模式下,若没有为表达式赋值,那么输出的结果会被分配给变量 _,这样继续计算会更容易些,例如:

>>> 2 + 2
4
>>> _ * 2
8

python 文档中关于变量_的注意点:

This variable should be treated as read-only by the user. Don’t explicitly assign a value to it — you would create an independent local variable with the same name masking the built-in variable with its magic behavior.

直译:用户应将此变量视为只读。不要显式地给它赋值——你会创建一个同名的独立局部变量,用它的魔法行为屏蔽内置变量。 

不信?试试:

>>> _ = 5
>>> 2 + 2
4
>>> _ * 2
10

算数运算符

运算符描述

表达式

(a = 9,b = 2)

运算结果
+a + b11
-a - b7
*a * b18
/a / b4.5
%取余a % b1
**a ** b81
//取整除(Floor)a // b

4

注意:

  1. 不同类型的数混合运算时,会将整数转化为浮点数,结果也是浮点数。
  2. 与 py2 不同,py3 中对任何类型的操作数进行除法 / 运算,结果都是浮点数,即使整除,结果也会是浮点数。如果想丢弃小数部分,可以使用 // 运算符(floor division)。

  3. // 运算中只是丢弃小数部分,并不是说一定返回整数,结合第1点,如果操作数是浮点数,那么结果也会是浮点数,只是丢弃了小数部分,比如 9 // 2 = 4,9.0 // 2 = 4.0。

赋值运算符

运算符描述

表达式

(a = 9,b = 2, c = 10)

c
=赋值c = a + b11
+=加法赋值c += a 等效于 c = c + a19
-=减法赋值c -= a 等效于 c = c - a1
*=乘法赋值c *= a 等效于 c = c * a90
/=除法赋值c /= a 等效于 c = c / a1.1111111111111112
%=取模赋值

c %= a 等效于 c = c % a

1
**=幂赋值c **= a 等效于 c = c ** a1000000000
//=取整除赋值c //= a 等效于 c = c // a1

比较运算符

运算符描述

表达式

(a = 9,b = 2)

运算结果
==等于a == bFalse
!=不等于a != bTrue
>大于a > bTrue
<小于a < bFalse
>=大于等于a >= bTrue
<=小于等于a <= bFalse

位运算符

位运算是将两个数字按二进制位进行运算。

运算符描述
&与:两位同时为1,结果才为1,否则为0
|或:两位有一个为1,结果则为1
^异或:两位不相同,结果为1
~取反:对数据的每个二进制位取反
<<左移:运算数的各二进位全部左移若干位,<< 右边的数字指定移动的位数,高位丢弃,低位补0
>>右移:运算数的各二进位全部右移若干位,>> 右边的数字指定移动的位数,高位补0,低位丢弃

例如变量 a = 9,b = 2:

二进制十进制
a

1001

9
b00102
a & b00000
a | b101111
a ^ b101111
~a

1111 0110

-10
a << b0010 010036
a >> b00102

逻辑运算符

逻辑运算符一般操作的是 bool 类型。

运算符描述

表达式

(a = True,b = False)

结果
and逻辑与:两个条件都满足时,结果为 Truea and bFalse
or逻辑或:两个条件中任一个满足时,结果为 Truea or bTrue
not逻辑非not aFalse

成员运算符 

运算符

表达式

(a = 2,b = [2, 3])

描述结果
ina in b如果对象b包含对象a,返回True,否则返回FalseTrue
not ina not in b如果对象b不包含对象a,返回True,否则返回FalseFalse

身份运算符

运算符描述
is如果两个变量引用自同一个对象,返回True,否则返回False。
is not如果两个变量引用的不是同一个对象,返回True,否则返回False

注意:is 和 == 不一样,a is b 类似于 id(a) == id(b),用于判断两个变量是否引用自同一个对象,而 == 用于判断两个变量的值是否相等。

is 其实就相当于C语言中的指针比较:"(void*) &a == (void*) &b"。

在 python 中,一切都是有地址的对象,包括数字,而数字是不可变数据类型,这意味着改变变量存储的数值时,不是在已有的内存上做修改,而是为新的数字重新分配内存空间。如下,id() 函数可以获取对象的内存地址,两次给 num 赋值后,num 指向的内存地址发生了变化。

>>> num = 22
>>> id(num)
2009505950672
>>> num = 33
>>> id(num)
2009505951024

运算符优先级

以下按优先级由高到低列出:

运算符描述
**算数运算符:指数
~ + -位运算符:取反、一元加(正)、一元减(负)
* / % //算数运算符:乘、除、求余、取整除
+ -算数运算符:加、减
>> <<位运算符:右移,左移
&位运算符:与
^ |位运算符:异或、或
<= < > >=比较运算符
== !=比较运算符
= %= /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not and or逻辑运算符

 记不清楚不要紧,我们可以用括号用来分组,这样代码可读性也更高。

>>> 1 + 2 << 3
24
>>> (1 + 2) << 3
24

数学函数

内置函数

python 内置函数一览表:Built-in Functions,其中与数学有关的有:

函数描述实例
abs(x)返回 x 的绝对值abs(-2) 返回 2,  abs(-2.0) 返回 2.0
max(x1,x2,...)返回给定参数的最大值max(1, 2) 返回2,max(1, 2, 3) 返回3
min(x1,x2,...)返回给定参数的最小值min(1, 2) 返回1,min(1, 2, 3) 返回1
oct(x)将 x 转换为以“0o”为前缀的八进制字符串oct(10) 返回 '0o12'
pow(base, exp)等效于使用幂运算符:base**exp。 pow(2, 3) 返回 8
round(x[, ndigits])返回浮点数x四舍五入的值,若给出ndigits,则四舍五入到 ndigits 精度

round(5.555) 返回 6

round(5.555, 1) 返回 5.6

sum(iterable, /, start=0)从 start 开始对 iterable 的各项求和并返回总数sum((1, 2, 3)) 返回 6

math 模块

python 中数学运算常用的函数基本都在 math 模块中。math 模块中的函数不能用于复数,如需支持复数,可使用 cmath 模块中的同名函数。

查看 math 模块的内容:

>>> import math
>>> dir(math)
['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc', 'ulp']
>>> help(math)

模块类函数详见:Python 3 math 库函数一览表_SummerPa的博客-CSDN博客

1.6、 Python3 数字(Number 随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。Python 解释器可以作为一个简单的计算器,您可以在解释器里输入一个表达式,它将输出表达式的值。有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符。数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。 阅读详情

相关推荐

Python3 数字(Number)

Python 数字数据类型用于存储数值。数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。以下实例在变量赋值时 Number 对象将被创建:var1 = 1var2 = 10您也可以使用del语句删除一些数字对象的引用。del语句的语法是:您可以通过使用del语句删除单个或多个对象的引用,例如:del var- 通常被称为是整型或整数,是正或负整数,不带小数点。

决战软件之巅的博客 1077

python win32con键位表_关于pywin32的完整键位码表

网上流传的键位码表如下:字母和数字数字小键盘的键 功能键 其它键键 键码 键 键码 键 键码 键 键码A 65 0 96 F1 112 Backspace 8B 66 1 97 F2 113 Tab ...

weixin_29355377的博客 1879

python账号_用户账号系统(python

user_list=[]#所有学生账号储存在该列表中for i in range(1,201):temp={'name':'stu'+str(i),'password':'ppsuc'+str(i),'email':'stu'+str(i)+'@gd.com'}user_list.append(temp)#通过for循环创建200个现有学生账号print("欢迎使用教务系统!")whileTrue...

weixin_39540315的博客 601

python3 基本数据类型:转义字符、字符串运算符

转义字符 反斜杠:\\ 单引号:\’ 双引号:\” 响铃:\a 退格(Backspace):\b 空:\000 换行:\n 纵向制表符:\v 横向制表符:\t 回车:\r 换页:\f 十六进制ASCII码形式转义输出:\xyy print('\x41') #A 字符串运算符 字符串连接:+ 重复输出字符串:* 索引形式获取字符串中的字...

diyudong4681的博客 257

Python3中的数字类型操作运算

Python数字类型知识点学习

小懵牛 505

Python3: 基本数据类型 与 数学运算

1. Python3 基础数据类型 Python 官网介绍: 数据结构: Data Structures 内置类型: Built-in Types 1.1 变量 Python 中的变量不需要声明,每个变量在使用前必须赋值,变量赋值以后才会被创建。Python 中变量就是变量,它没有类型。我们所说的“类型”是指变量所指的内存中对象的类型,同一个变量名可以指向不同的类型(一般不这么做)。变量赋值使用等号(=)。 i = 10 # 整型变量 f = 2.3

谢TS的博客 988

Python入门:Python3 数字 (Number) 全面学习教程

Python入门:Python3 数字 (Number) 全面学习教程,本文围绕 Python3 数字类型展开,介绍了整型、浮点型、复数三种类型及特殊表示法,讲解了变量赋值与删除操作,阐述了类型转换的方法。还说明了数字运算规则,包括基本运算、混合运算类型转换等特殊规则,以及常用数学函数、随机数函数、三角函数和数学常量。旨在帮助初学者掌握数字操作核心知识,应对各类数值计算场景。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 22万+

Python基础教程之Python 数字(Number) 详解

目录 Python3 数字(Number) Python 数字类型转换 Python 数字运算 数学函数 随机数函数 三角函数 数学常量 Python3 数字(Number) Python 数字数据类型用于存储数值。 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。 以下实例在变量赋值时 Number 对象将被创建: var1 = 1 var2 = 10 您也可以使用del语句删除一些数字对象的引用。 del语句的语法是: del va.

Soinice的博客 1167

Python 数字(Number)

Python 数字数据类型用于存储数值。数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。

Aurora_Cruiser的博客 1110

Python3运算符+Python3数字(Number)+Python3字符串

Python3运算符+Python3数字(Number)+Python3字符串

weixin_45906989的博客 245

python运算符数字(Number)、字符串(String),第一百零六天

2018/9/5 2018/9/5 1 1. Python 运算符 4 1.1. 什么是运算符 4 1.2. 算术运算符 4 1.2.1. 实例 4 1.2.2. 输出结果 5 1.3. 比较运算符 5 1.3.1. 实例 5 1.3.2. 输出结果 6a 1.4. 赋值运算符 7 1.4.1. 实例 7 1.4.2. 输出结果 8 1.5.运算符 8 1.5.1....

weixin_42157426的博客 618

Python笔记——数字数学函数

Python笔记——数字数学函数 一、python中的数字 1、 类型及运算符 Python中有四种类型的数 Ø 整数:一般意义上的数,包含八进制(0开头),十六进制(0x开头) eg. 2 Ø 长整数:无限大小的数,结尾添加l或L eg. 2012121200 Ø 浮点数:小数或用e/E表示的幂 eg. 3.23 50.2E2 Ø 复数:复数的虚部以字母J 或 j结尾 eg.

wklken的笔记 5万+

python内置的数学函数_Python数字和内置数学函数

python内置的数学函数 Python数字和内置数学函数 (Python Numbers and built-in Math Functions) In this section, we will be learning about Numbers and various Math functions available in python language. In Numbers, we w...

cunfen6312的博客 2580

Python学习(十)之数字Number)、字符串(String)

文章目录一、Python中的字符串1、字符串的特性1.1 索引1.2 字符串的常用方法二、练习1 、变量名是否合法2、 输入 hello xiao mi 输出 mi xiao hello3、 随机出题练习10内加减4、算术能力测试系统 一、Python中的字符串 字符串是Python中最受欢迎、最常用的数据类型。可以通过用引号括起字符来创建他们。 1、字符串的特性 1.1 索引 (1)拿出最...

ranrancc_的博客 1069

2.7 Python3 数字(Number)

Python 中的数字数据类型用于存储数值,是不可变类型,这意味着如果改变数字的值,实际上是创建了一个新的对象。 1. Python 数值类型 2. Python 数字类型转换 3. Python 数字运算 4. 数学函数 5. 随机数函数 6. 三角函数 7. 数学常量

weixin_40978412的博客 1244
上一篇: QMetaEnum: C++ 中将枚举值自动转换为字符串
下一篇: Python 3 math 库函数一览表
Oo安暖oOo
博客等级 码龄11年 18粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值