Python中的运算符
在数学中,我们知道有加减乘除,乘方开方等运算。在Python中,我们也有这些运算符,不过不同的是,我们的运算符远远不止这些,大概分成赋值运算符,算术运算符,关系运算符,逻辑运算符以及复合运算符。下面我们将依次对他们进行介绍。
-
赋值运算符
在编程中,我们使用一个等于号(=)表示赋值运算。赋值运算符的含义是将右边的数值赋给左边的变量(变量可以理解成盒子),也就相当于将右边的东西放在左边的盒子里。需要注意的是左边一定是盒子,不能也是东西。
x=1 #正确,将1放进变量xzhogn 1=x #错误,不能将值放进变量中
顺便在这里补充一下变量(标识符)的命名规范:
- 只能由字母,数字,下划线(
-
)组成 - 不能由数字开头
- 不能包含关键字(关键字也叫作专用名词)例如,
for
,break
,in
,while
,if
,else
,elif
,and
,or
,not
,True
,False
,pass
,continue
等等。
- 只能由字母,数字,下划线(
-
算术运算符
算术运算符 | 举例 | 说明 |
---|---|---|
加法(+ ) | 1+2 | |
减法(- ) | 1-2 | |
乘法(* ) | 1*2 | |
除法(/ ) | 1/2 ,4/2 | 一个/ 表示除法,需要注意的是除法一定包含小数。比如说,4/2 的结果为2.0 。 |
整除(// ) | 1//2 | 整除的意思就是除法的结果为整数。但需要注意的是除数和被除数也都必须为整数才行。需要注意的是5//2 的结果为2 。原因是整除得到的整数结果是通过直接抹去小数部分得到的。因此1//2 的结果为0 。 |
求余(% ) | 5%2 | 求余运算可以直接获得余数。5%2 的结果为1 ,原因是5/2=2...1 ,其中1 为余数。 |
乘方(** ) | 5** 0.5 ,5**2 | 乘方也就是幂运算。这里值得提醒的是5**0.5 的值为$\sqrt2$ |
在数学中,我们了解到,如果一个表达式中包含加减乘除,则我们需要先计算乘除,再计算加减。编程中亦是如此。如果表达式中包含括号,那么先计算括号内的内容。其次依次是乘方,乘法/除法/求余,加法/减法。
-
关系运算符
关系运算符常用来表达两个内容之间的关系。
关系运算符 举例 说明 大于( >
),小于(<
)4>3
,3<4
大于等于( >=
),小于等于(<=
)4<=3
,3<=4
大于等于的含义是大于或者等于,小于等于的含义是小于或者等于 相等( ==
),不相等(!=
)4==4
,3!=4
相等使用两个等于号表示,而不等号是惊叹号+等于号 关系运算符就类似于数学上的大小关系,值得注意的是关系运算符的结果为布尔类型(即只有真
True
和假False
两个结果)。-
字符串中的大小关系比较
字符串比较大小时是依次比较每一个字符,当某一对字符不相同时,分出大小。例如
hi
和hello
,其中较大的是hi
。原因是hi
中的h
与hello
中的h
相等,然后在比较后一个字符,hi
中的i
大于hello
中的e
,因此,hi
要更大一些,尽管hello
长度更大。hi<hie
,原因是hi
与hie
前面的hi
均相同,但hie
更长一些,因此hie
更大。在这里有一个比较简单的比较方法(仅限于纯字母的字符串),如果一个字符串比另一个字符串出现在英语字典中较后的位置,那么靠后的那个字符串更大。此外,对于一个字符来说,数字$<$
大写字母$<$
小写字母。
-
-
逻辑运算符
逻辑运算符就是用来表达逻辑关系的,例如“并且”,“或者”,“否定”等。对于这三个逻辑运算符来说,它们的优先级是
and>or>not
。逻辑运算符 举例 说明 并且( and
)4<a and a<6
只有 and
左右两侧的结果均是满足条件,整体才是满足条件。或者( or
)4<a or a>5
or
两侧的条件只有满足一个,整体就是满足条件的。否定( not
)not 4<a
只有当 not
后的条件为假,整体就是满足条件的。-
复合运算符
复合运算符常常是多个运算符连接在一起,组成一个特殊含义的运算符。
复合运算符 举例 等价式 +=
a+=b
a=a+b
-=
a-=b
a=a-b
*=
a*=
a=a*b
/=
a/=b
a=a/b
//=
a//=b
a=a//b
%=
a%=b
a=a%b
-