版权声明:本文为小嘉丶学长原创文章,未经博主允许不得转载。 https://blog.csdn.net/fj_Author/article/details/78933500
数学运算
在Python之中支持以下几种数学运算
No | 运算符 | 描述 |
---|---|---|
1 | * | 乘法运算 |
2 | + | 加法运算 |
3 | - | 减法运算 |
4 | / | 除法运算 |
5 | // | 除法运算(求商) |
6 | % | 取模运算(求余) |
7 | ** | 幂运算 |
注:
在Python3之中,//号的用法而python2之中的除法相同;
除法运算在Python2之中,除法是采用取整的方式,即1/2=0,而在python3之中1/2=0.5,1//2=0;
float also accepts the strings “nan” and “inf” with an optional prefix “+” or “-” for Not a Number (NaN) and positive or negative infinity.
浮点数还包括两个字符串表示的
字符串 | 描述 |
---|---|
nan | 不是一个数 |
inf | 表示无穷大 |
例:
>>> type(float('nan'))
<class 'float'>
>>> type(float('inf'))
<class 'float'>
>>> type(float('a'))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: could not convert string to float: 'a'
浮点数误差累积问题
浮点数的表示是有误差的。0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1
类型转换
内建函数 | 描述 |
---|---|
abs(x) | 求x的绝对值 |
int(x) | 把x转换为整型 |
float(x) | 把x转换为浮点型 |
complex(re, im) | 通过re(实数部分),im(虚数部分,默认为零)构造一个复数类型 |
既然提到了复数类型,负数可以通过z.real获得实数部分,z.imag获得虚数部分。
例如
z = 1 + 2j
>>> z.imag
2.0
>>> z.real
1.0
在复数的运算里面,有一个概念叫做共轭复数,通过c.conjugate()
方法,可以等到C的共轭复数。
共轭复数:对于复数z=a+bj ,称复数z’=a-bj为z的共轭复数。至于共轭复数的特性,自己参考数学相关知识点。
布尔类型
在python之中布尔类型只有两个值,True和False;注这里的大写。实际上True和False就是1和0,分别表示真和假。
由于它们实际上就是0和1,所以它们可以参加数学运算(但不推荐)。
在Python之中以下几种情况都被认为是False:
- None和False
- 任何数值类型的0:0, 0.0, 0j, Decimal(0), Fraction(0, 1)
- 空的序列或集合:empty sequences and collections: ”, (), [], {}, set(), range(0)
逻辑操作
Operation | Result |
---|---|
x or y | if x is false, then y, else x |
x and y | if x is false, then x, else y |
not x | if x is false, then True, else False |
比较操作
Operation | Meaning |
---|---|
< | strictly less than |
<= | less than or equal |
> | strictly greater than |
>= | greater than or equal |
== | equal |
!= | not equal |
is | object identity |
is not | negated object identity |
作业
1、回答1//2 , (-1)//2 , 1//(-2),(-1)//(-2)的结果
2、回答-5%2,5%-2, -5%-2的结果