在 Python中
注意:如果变量已经被定义,当给一个变量赋值的时候,本质上是 修改了数据的引用
>>> help(id)
Help on built-in function id in module builtins:
id(obj, /)
Return the identity of an object.
返回一个 对象的 标识(存在内存中的多少号)
This is guaranteed to be unique among simultaneously existing objects.
(CPython uses the object's memory address.)
在同时存在的对象中必然是唯一的。
执行如下语句:
name2 = name
使用id函数查看变量 name2 和name的地址/引用是否一致?
结果也是一致的,说明在python中,一个地址复用次数多,这样可以节约内存,避免内存浪费。
对name1进行重新赋值:
Name1 = "admin1"
Name 和name1还是同一个地址吗?
所谓赋值,就是内存中变量名指向的改变,重新赋值,变量就指向了新的地址
赋值运算符 |
说 明 |
举 例 |
展开形式 |
= |
最基本的赋值运算 |
x = y |
x = y |
+= |
加赋值 |
x += y |
x = x + y |
-= |
减赋值 |
x -= y |
x = x - y |
*= |
乘赋值 |
x *= y |
x = x * y |
/= |
除赋值 |
x /= y |
x = x / y |
%= |
取余数赋值 |
x %= y |
x = x % y |
**= |
幂赋值 |
x **= y |
x = x ** y |
//= |
取整数赋值 |
x //= y |
x = x // y |
演练并分析数据赋值的过程
注:扩展赋值运算符 -= 、 *= /= 只适用于数学运算上,不能进行字符串的拼接
算数运算符是运算符的一种
是完成基本的算术运算使用的符号,用来处理四则运算
运算符 |
描述 |
实例 |
+ |
加 - 两个对象相加 |
a + b 输出结果 30 |
- |
减 - 得到负数或是一个数减去另一个数 |
a - b 输出结果 -10 |
* |
乘 - 两个数相乘或是返回一个被重复若干次的字符串 |
a * b 输出结果 200 |
/ |
除 - x除以y |
b / a 输出结果 2 |
% |
取模 - 返回除法的余数 |
b % a 输出结果 0 |
** |
幂 - 返回x的y次幂 |
a**b 为10的20次方, 输出结果 100000000000000000000 |
// |
取整除 - 返回商的整数部分(向下取整) |
>>> 9//2 4 >>> -9//2 -5 |
和数学中的运算符的优先级一致,在Python中进行数学计算时,同样也是:
以下表格的算数优先级由高到最低顺序排列
运算符 |
描述 |
** |
幂(最高优先级) |
* / % // |
乘、除、取余数、取整数 |
+ - |
加法、减法 |
运算符 |
描述 |
实例 |
== |
等于 - 比较对象的值是否相等 |
(a == b) 返回 False。 |
!= |
不等于 - 比较两个对象是否不相等 |
(a != b) 返回 true. |
<> |
不等于 - 比较两个对象是否不相等。python3 已废弃。 |
(a <> b) 返回 true。这个运算符类似 != 。 |
> |
大于 - 返回x是否大于y |
(a > b) 返回 False。 |
< |
小于 - 返回x是否小于y。 |
(a < b) 返回 true。 |
>= |
大于等于 - 返回x是否大于等于y。 |
(a >= b) 返回 False。 |
<= |
小于等于 - 返回x是否小于等于y。 |
(a <= b) 返回 true。 |
所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。
== 或者 != 用于比较变量的值是否相同,区别于变量的id是否相同
is是身份运算符,用来比较两个变量的引用的id是否一致
运算符 |
逻辑表达式 |
描述 |
实例 |
and |
x and y |
布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 |
(a and b) 返回 20。 |
or |
x or y |
布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 |
(a or b) 返回 10。 |
not |
not x |
布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 |
not(a and b) 返回 False |
条件1 and 条件2
条件1 |
条件2 |
结果 |
成立 |
成立 |
成立 |
成立 |
不成立 |
不成立 |
不成立 |
成立 |
不成立 |
不成立 |
不成立 |
不成立 |
条件1 or 条件2
条件1 |
条件2 |
结果 |
成立 |
成立 |
成立 |
成立 |
不成立 |
成立 |
不成立 |
成立 |
成立 |
不成立 |
不成立 |
不成立 |
not条件
条件 |
结果 |
成立 |
不成立 |
不成立 |
成立 |
逻辑与练习:
三目运算符,又称条件运算符。它是唯一有3个操作数的运算符,有时又称为三元运算符
Python中三目运算符的格式:
结果1 if 表达式 else 结果2
表达式有两个结果 要看一下表达式的值是真还是假,如果是真,返回前面的结果,如果是假,则返回后面的结果
三目运算符练习: