Python 运算符(一)

[复制链接]
vpbiqva 发表于 2017-12-30 17:25:22 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
就像数学中的加减乘除运算符一样,Python的变量与变量之间也可以进行运算,例如: 2 + 3是一个Python表达式,而“+”就是运算符。
/ y4 s. |4 k: `
8 a4 f" j/ ^4 y5 p5 UPython中的运算符大致可以分为以下几类:" U) M% s" q9 G+ E. o* ~/ M9 u: `
    $ W  p& h, x+ h' x1 h- D
  • 算数运算符! e2 I5 d) R" e- Y: W9 {
  • 比较运算符
    - f9 o+ P# l: d& l7 Y
  • 赋值运算符) F7 x# r0 X  E
  • 逻辑运算符
    - J& ], u# B& Q8 o
  • 成员运算符
    9 t+ f9 x+ n: L% d
  • 身份运算符! M' k8 O8 @9 H+ b7 v. j
  • 位运算符. T: @2 q; o5 k, W
算数运算符% \3 ?# z0 S" b/ K
* r- ?. y/ K1 P3 @3 \5 y( b
算数运算符就是进行数学运算的操作符,Python中的运算符如下:9 w, ~- k. G2 K, u
运算符
! r* n; f! B8 D3 c; F4 I6 O
描述0 K. `2 ^# E1 s! T; B: r: `4 G
示例
; I3 s# o/ C( e1 B) a% {$ U
+
6 }( q- O  g  b$ \. a
加法运算
5 d4 w! R, W8 }8 |/ E
2 + 3 输出结果为 5
+ l( L* b. \- ?! y0 @1 Q$ _
-
4 q: c. |( s3 E& t% k
减法运算# ~6 y1 I2 P  z4 a- w
5 - 2输出结果为3. J0 H. }7 \2 d8 W
*
' u" g  \' Z- ?0 H  g5 I
乘法运算5 K# ]9 l8 l# O4 o. k4 d
2 * 3输出结果为6' `9 q) y; c, @5 I; B
/1 W1 T' W; T* s5 d7 G7 t
除法运算
5 k9 C! Z- T! \7 Y1 L4 i7 b
6 / 2输出结果为3
! A& q1 O/ I; ]8 ?; o' v8 O
%, s& ~# n) }/ T) D7 g$ ?! t
模运算,返回除法的余数,即左侧操作数减去右侧操作数小于等于左侧操作数的倍数所得余数8 B; @* O" [* \9 w5 @) `+ B
5 % 3输出结果为2
& H1 V, ?' q( \0 u% _+ W  z右侧操作数3小于等于5的倍数是3, 5 – 3 等于2。5 M2 p* \% c, B" X( |
7 % 3输出结果为1, k( w0 Z$ o! ?2 A. N" L/ _3 U
右侧操作数3小于等于7的倍数是6, 7 – 6 等于1。
5 j' k, W( _; u9 % 3输出结果为0
9 v  Q5 Y7 Z$ H' u7 i5 |右侧操作数3小于等于9的倍数是9, 9 – 9 等于0。
  ?; O% B$ \. t! |- S. Z' j
**
) ?" k# w+ k) X: t! E. q
幂运算
3 C) {* C3 U, B1 v6 ]) N9 V. @
2 ** 3输出结果为8
) E1 V1 U( O% y( \% R# I
//9 a8 t$ H2 ?6 y  b3 l# g
整除运算,返回商的整数部分6 M! |4 [3 z0 p; Y
除法运算9 / 4 的输出结果为2.255 l7 G& T! z; @  [7 O' M
整除运算9 // 4 的输出结果为2" O( l: P2 A& T7 ?
比较运算符
0 E+ ?2 o1 S0 `  g% o4 s0 g5 I
数学中两个数有大小之分,Python变量之间也可以进行大小比较,比较运算符如下:
2 {: ~1 {+ e5 h: k9 u/ J
运算符
3 q2 i* ?% T2 ?4 d* O+ H
描述/ L: k+ v. O& u2 C& v
示例4 k) j4 |) _- t! w! M; E4 y8 S! u
==
; I7 e# W( b+ P* T
等于运算符0 G- d2 ]- w  x
2 == 2 返回 True$ N9 m3 `  s. i# m! H
2 == 3 返回 False
( F/ _. z$ D- G  _; I4 w
!=: O. X1 B1 x9 n+ O: B# f* \
不等于运算符3 `* [% J( r4 P, x
2 != 2 返回False3 S. X4 Z2 l3 d/ S
2 != 3 返回True
' X5 J/ U) l. ^$ i- k) t3 ~
>
0 j1 L) o$ ?/ B6 ?5 d
大于运算符
1 V! r5 [! `" f$ @& ]9 ]6 j) u
3 > 2 返回 True. ^& {6 j6 P. |5 o( I$ u. U0 [
2 > 3 返回 False
2 W5 o0 J$ ~; b8 d! V* D3 > 3 返回 False
- |- e- D9 g  e; [
<
/ b3 _% I( T' z+ P- f  s! e
小于运算符0 G+ i3 W4 O$ N3 w
2 < 3 返回 True7 J. ]+ S7 v' \( t
3 < 2 返回 False
6 C, d) S$ g+ j' U3 < 3 返回 False
& {. \, d* v- f# R. `, w
>=( R0 \' K1 T2 v7 G7 }  _& g
大于等于运算符# m# C, B! D- C% W  p" K9 g
3 >= 2 返回 True
/ I5 b4 |) H7 J2 B# S$ G: X2 >= 3 返回 False+ m6 b& M9 O) g5 c. _% i, _* H! _
3 >= 3 返回True+ P; j( c2 z+ H+ t, ^! ?5 T% ~0 O3 ?
<=
' T2 M5 r  a* z4 ~* `! o) A
小于等于运算符
4 h& K) _+ z! P: B5 e
2 <= 3 返回 True
4 B+ o4 T! J3 D) e0 y1 s1 v" D3 <= 2 返回 False
+ z: j* v8 D& O( ^3 v( [3 <= 3 返回True' @4 X% N" w7 w) N
赋值运算符) H2 c+ p, i& E

5 V' \0 \1 \, m( \0 V 赋值运算就是将右侧的表达式或者数值赋值给左侧变量,例如:
& R- f, K& G7 k
运算符8 @# l, U& q) J1 }5 M1 A
描述/ N5 m4 T9 X$ _3 d
示例4 @7 \$ a0 P. H' |3 N
=
# h8 I* v  D& ?, S4 d
将右侧值简单的分配给左侧操作数,如右侧操作数是可变类型则将指针传递给左侧操作数
, G1 D2 @8 U5 E
A = 2 + 3) d) l- O. a+ N3 b, [" t* E
将2 + 3的结果5赋值给A2 z# e- t1 `: ?! d9 e
List1 = [1, 2, 3]" Y0 b' f9 f# l% \4 O. f( b
List2 = List1
; `. d* O% J. z6 H: j) Q; M赋值结束后,List1与List2指向同一内存地址
) V. O) J% \2 ?# z. i4 v
+=
- ^4 H/ O3 H* W/ ^" O  u9 \, G
先将两侧操作数相加,再将结果赋值给左侧操作数
( ]1 I, x- K' m' b
A = 2
. f- h) Z, G( B0 ]B = 3
! G7 r& h& K+ J1 ~; [A += B
- N/ {6 ^$ B8 L# s赋值结束后, A等于57 n& v  S1 j5 S# I3 J2 `4 }2 l. \
-=# h1 A/ Y- {. \# c1 L
先将两侧操作数相减,再将结果赋值给左侧操作数
9 K1 T% `% \) M# t  [" q$ l- [  ^
A = 5
; p1 h- ]- _4 z) a4 g! s0 A  ZB = 3/ U+ Z: i4 q1 _" W/ p
A -= B1 \! Q  j% U6 D% X7 m: r+ n
赋值结束后, A等于2
$ i8 l3 z3 w+ c
*=. e+ l4 h+ ^0 h  Y/ A1 M- H3 P
先将两侧操作数相乘,再将结果赋值给左侧操作数
( ?9 _# ?  X8 P* v2 w* o
A = 5
" ?5 b/ u* f2 {; ~B = 38 H+ S$ b! k  ]) ?5 L7 Q$ a: z
A *= B
9 I) m+ Y3 A# @* K1 D$ j5 b  n赋值结束后, A等于15
3 D: L1 S8 O" _( Z
/=/ p$ A+ \1 B5 V; S+ A- x2 U
先将两侧操作数相除,再将结果赋值给左侧操作数# j; U7 n* s1 m4 M# A1 i$ b
A = 6+ P2 d: [6 ^1 V8 l+ j+ B
B = 3& ~6 }9 n. ?9 K7 q, f7 l
A /= B( U9 F9 _- g7 T  j0 s+ {0 k
赋值结束后, A等于2
9 @  @+ q9 \' c5 O, R
%=- N' q  x. s9 p: ]
先求模,再将结果赋值给左侧操作数- |  J3 k8 D' f' x8 @
A = 7
3 x. L9 C% n9 w6 v- l3 yB = 30 A3 E, V( y" v
A %= B5 N& q6 g) f9 c; k" a
赋值结束后, A等于15 ^$ a# ]" T1 @2 k' z
**=
. H: H% c$ q9 e
先进行幂运算,再将结果赋值给左侧操作数7 L9 F! d+ _& l; j( t% O* K0 \
A = 2; F# {6 U0 m& F$ J
B = 3
  f& o) I$ [: yA **= B8 ?) L* O5 U# L# J. P+ z$ M
赋值结束后, A等于8! G9 v2 K$ X& h5 q
//=
: U( S) b8 K6 F
先进行整除运算,再将结果赋值给左侧操作数/ j+ D$ m- Q. e2 F# a; Z5 ?
A = 98 G5 z% u, a$ B
B = 41 s9 B$ X  |4 J! S% n* c
A //= B4 f' d& }7 S' l7 g; t9 S& r. N
赋值结束后, A等于2
4 ^" _) F" @1 v6 e! m( u5 p
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
推荐阅读更多+
阅读排行更多+
用心服务创业者
0851-88611148
周一至周五 9:00-18:00
意见反馈:admin@0851life.com

扫一扫关注我们

Powered by 童码少儿编程 X3.4© 2001-2013 0851life Inc.|网站地图