今天学习的是python的基础语法,这对我来说真的是简单至极,这和Java里的基础语法真的是太相似了,他们都有 算数运算符、比较运算符、赋值运算符、位运算符逻辑运算符 当然还有Java里面没有的,就是成员运算符和身份运算符
3.1 运算符
3.1.1 算数运算符
算数运算符可太简单了,和Java一样都有 + - * / % 用来实现加减乘除和取模(求余数)的操作。但python里面还有两个额外的运算符,那就是一个是幂运算符为"**",进行幂运算,如 a = 2 ** 3,a的值就是2的平方。另一个是 (“//”)取整数,返回商的部分,如b = 10 // 3,b的结果就是 3.
3.1.2 比较运算符
python的比较运算符和Java基本一样,不过不等号提供了两种,一种是 !=,另一种是 <> 。其他和Java一样。
符号 | 描述 |
---|---|
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
!= | 不等于 |
<> | 不等于第二形态 |
3.1.3 位运算符
位运算符这个是什么东西呀?我刚开始真的感觉云里雾里的,好在有一个叫做面向百度学习的方法,我查了百度后才知道 “位运算符就是二进制位的运算,如果你想要计算两个十进制数(十进制数就是0~9,逢十进一)的位运算,就要先转换成二进制数(逢二进一)再进行运算”
如:十进制数a = 2,b=3,则其二进制格式为 a=10,b=11,
位运算符 | 描述 | 实例 |
---|---|---|
& | 按位与 运算符,两个二进制数想加,如果对应的位数都是1,则该为结果为1,否则为0 | 比如 a&b的结果为 10,即结果为10. |
| | 按位或 运算,两个对应的两位有个1,则结果位为1 | 如a |b的结果为11 |
^ | 按位异或,参与运算的两个二进制数,对应的二进制位不同时,结果为1 | a ^ b 的结果为 01 |
~ | 取反,对某个二进制数取反,把1变0,把0变1 | 如 ~a 的结果是 01 |
<< | 左移运算符,运算符的各位二进制位左移若干位,,高位丢弃,地位补0 | 如 a << 2 的结果为 1000 |
>> | 右移运算符 | a >>2的结果是 00 |
3.1.4赋值运算符
赋值运算符也真的很简单,用 = 号做为基础,然后和其他算数运算符联动。如下表所示:
赋值运算符 | 描述 | 实例 |
---|---|---|
= | 简单的等号 | a=1为将1的值赋值给a |
+= | 加法赋值运算符 | a += 1;等效于 a = a +1 |
-= | 减法赋值运算符 | a -= 1;等效于 a = a - 1 |
*= | 乘法赋值运算符 | a *= 1;等效于 a = a * 1 |
/= | 除法赋值运算符 | a /= 1;等效于 a = a/1 |
%= | 取模赋值运算符 | a %= 1;等效于 a = a %1 |
**= | 幂赋值运算符 | c = a;等效于 c = ca |
//= | 取整赋值运算符 | c //= a;等效于 c = c // a |
3.1.5 逻辑运算符
逻辑运算符 是 与(and)或(or)非(not),这个学过Java的都懂,我就不写了,写东西太久了。
3.1.6 成员运算符
in 查找某个值是否在某个序列(元组、列表等)中。
not in 查找某个值是否不在某个序列(元组、列表等)中。
3.1.7 身份运算符
is 判断两个标识符是不是引用自同一个对象
is not 判断两个字符是不是引用自不同的对象
学了一天的运算符,感觉边学边写笔记效率好慢,不过还是得坚持坚持。