Python 运算符(一)

[复制链接]
vpbiqva 发表于 2017-12-30 17:25:22 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
就像数学中的加减乘除运算符一样,Python的变量与变量之间也可以进行运算,例如: 2 + 3是一个Python表达式,而“+”就是运算符。
, ~1 s* g. g: K) x3 s& p
* f' s) B3 ?# @Python中的运算符大致可以分为以下几类:
5 U7 c0 l1 l. S9 O
    2 f2 q( l2 U$ L
  • 算数运算符- Z* A5 z, B: O8 k2 E$ S
  • 比较运算符1 U! _. b. [( K' O" i
  • 赋值运算符( `: a2 l3 H) q4 b8 z8 e& _  G. d+ T
  • 逻辑运算符* x1 r4 I% H% _
  • 成员运算符/ M- h3 r6 b* S: `. Q2 ?+ a
  • 身份运算符
    7 s( G1 h1 W) a& v& L% d  C
  • 位运算符
    - m" p$ l' |7 z7 S
算数运算符/ o/ e" G' ?7 e

7 M6 Q/ e- o8 i# o$ s+ b: g 算数运算符就是进行数学运算的操作符,Python中的运算符如下:! e  q8 {* ^; [: ^3 y7 g8 l
运算符
+ ]% F/ Q% |8 G4 u
描述
+ `, l( q* ?/ B% p/ \
示例1 J% X& B2 S! j; A) v9 d7 C
+6 e/ |: T3 h* ]4 _+ M6 C
加法运算
3 {: S4 N: }: Q9 S; c
2 + 3 输出结果为 5
4 v7 T$ B( W  |* l. G% H
-. Y! C# y# t" f3 c, l8 Z; ?8 e
减法运算; @/ P/ q3 R: \2 T
5 - 2输出结果为3& [' c% C  w+ j: q0 l
*7 U9 ?; D8 w! @$ O: _
乘法运算' c; F9 B( ]6 U  _- E" N0 v5 n; X- }* n( \
2 * 3输出结果为6
* \8 ^8 ]( k! p1 f+ W! b
/1 B& f7 r& Q, Z0 r5 k
除法运算
  }1 o( _  x- e6 q' ]$ T
6 / 2输出结果为34 ~' o. L' u) r8 b( o3 V4 d. v
%
( Z. g$ z+ r1 _& D4 X
模运算,返回除法的余数,即左侧操作数减去右侧操作数小于等于左侧操作数的倍数所得余数
# z" ^& |! e2 ]; \/ u
5 % 3输出结果为2
  ]1 s" ~% K" G8 Y右侧操作数3小于等于5的倍数是3, 5 – 3 等于2。( L2 w# X$ m% D8 B; D, I
7 % 3输出结果为18 L# Z# U/ z! c+ N& M& v
右侧操作数3小于等于7的倍数是6, 7 – 6 等于1。
7 Z4 y9 ]! s/ Z  }' K9 % 3输出结果为05 G5 |5 d& @, |9 y
右侧操作数3小于等于9的倍数是9, 9 – 9 等于0。$ z; ^9 k- o+ K- R0 J( d- k7 }( A
**
( y  G- L6 ~1 W
幂运算
- U+ b- Z+ E- ]. h
2 ** 3输出结果为8- r" e- X/ S: O
//
" C: S; M6 O- V5 n5 q8 u7 U
整除运算,返回商的整数部分
; |. H7 K0 F4 Q! r/ n' Q
除法运算9 / 4 的输出结果为2.25
" X' G- H/ n1 D整除运算9 // 4 的输出结果为2+ Q8 c+ f* K( `1 J9 Q) F  e+ O$ a" _& W  n
比较运算符6 `7 x' _, A  c0 S/ E+ `5 Y
2 g; j* i; l9 G& u9 r
数学中两个数有大小之分,Python变量之间也可以进行大小比较,比较运算符如下:
1 \! k1 G& c2 z$ Q* J
运算符
4 E; @, O, }' E
描述
! g8 [+ \  L5 E$ l
示例& t, r; f/ K, T6 ?" `7 l# h
==$ E' x* V) s- m1 h# {% M( H
等于运算符& y8 r; K7 ~; e( E. R
2 == 2 返回 True
, L8 X* f2 I- A$ z, C) K" o2 == 3 返回 False, S) w0 `6 [; ^0 u+ Z. S5 s9 P5 q
!=
$ R( q( g4 h1 o3 o! Y
不等于运算符7 L2 \+ _' m' ]% T$ ?  X! y
2 != 2 返回False
7 i& T1 K$ H1 g7 r9 t2 != 3 返回True, ^/ U* [0 J3 o! B
>
+ v4 Y. S4 W4 z. _+ _9 D* q* s0 @
大于运算符
5 S: F7 r6 |+ V; o
3 > 2 返回 True
/ a& R' F- ^+ ~9 e5 @8 _( ^8 ?2 > 3 返回 False
: t. L! o+ G7 T# x3 > 3 返回 False+ Y0 u  i; S/ V
< 3 i1 @9 w/ A4 V/ R  _7 D
小于运算符
  }% J  v$ {+ u7 D& {- k$ k% ?
2 < 3 返回 True: _) q  G: y9 }% `" F
3 < 2 返回 False
( u5 I# N8 |+ C2 {2 y$ l' N+ t3 < 3 返回 False
' L1 R4 l! d3 x* t! E# v6 O
>=! B, z9 G- B( f% u
大于等于运算符
9 a" K* z- h( w/ L3 s+ e8 r! @
3 >= 2 返回 True# n3 l$ i; w* R
2 >= 3 返回 False6 T7 ^1 W" O' b' v8 V0 g' W1 ~
3 >= 3 返回True! J3 q3 @5 t9 v
<=
: e2 G1 U. Z" q1 B' w) M/ G; j
小于等于运算符
& B) L, w, F& u8 O  l& F+ X) c
2 <= 3 返回 True
1 h0 r. v5 B, R: [9 D' z3 <= 2 返回 False
. N: ?4 d/ K. P7 V9 {' I! Y* t3 <= 3 返回True% G! V- t+ b4 q3 G6 [' d
赋值运算符" q! n9 S( r6 f/ k& K8 W/ Q2 I, a
. I) }; D, v% P/ ~+ G
赋值运算就是将右侧的表达式或者数值赋值给左侧变量,例如:3 V0 ^$ E" P7 t( \& V, r0 y7 d
运算符
) _1 q0 l% A8 R. c! C0 n' J
描述( A3 q" W* ]7 m8 A1 ^/ j0 k
示例
; I* p% ^  ?% c  f2 J
=
) V% E! r+ E! P6 y: x/ j
将右侧值简单的分配给左侧操作数,如右侧操作数是可变类型则将指针传递给左侧操作数
6 n8 s7 }3 s2 h2 O2 w
A = 2 + 3
- T& }: L$ ^( A2 H3 V: |将2 + 3的结果5赋值给A
$ b3 ~9 `( W% z5 y- f; Y: UList1 = [1, 2, 3]) E/ O4 ?$ h$ [( ?- q
List2 = List1" J2 f' r! F0 M4 d
赋值结束后,List1与List2指向同一内存地址+ Z, ^% j) r9 u7 C  z) O" Y6 @
+=$ N4 U( e1 M# q: o
先将两侧操作数相加,再将结果赋值给左侧操作数
, I6 p7 V; ~' `" e% n- P
A = 2. i, i7 v( t% _, I7 ?4 _9 V1 k, q( C
B = 3* b* t- h3 R9 o* B! j
A += B' u1 [* U1 g# R1 ]
赋值结束后, A等于5
* A1 ], G' B0 S6 O- y+ t
-=
! i! X" N3 l6 y9 L; e
先将两侧操作数相减,再将结果赋值给左侧操作数5 l9 I1 n+ P# V* p4 d& D
A = 5! H# m# a2 p! d% K: R
B = 3- [3 ^+ s2 h6 L# U
A -= B
$ {6 l6 R' x) @4 M5 W$ N赋值结束后, A等于2) e5 N  z- Z1 S9 \
*=
- N* r$ M) [& ^- l! G0 ]
先将两侧操作数相乘,再将结果赋值给左侧操作数1 }: L# e9 s) g7 {6 r7 F
A = 58 E6 ]; p. S% c0 m* h0 h
B = 3
  n' a. [$ a# u  nA *= B) W7 R7 q9 o  B. f
赋值结束后, A等于15
$ Y0 V* _: I/ R* g( K8 {
/=
3 o( D) k8 o7 |4 j3 i+ n
先将两侧操作数相除,再将结果赋值给左侧操作数
4 |" a* Q+ s4 `2 X) u0 f2 g
A = 6& V( W" c+ R* w( j# x1 K* n
B = 3) `- [$ v6 v0 Z2 Y! a, t# N, M
A /= B
" [, e. J- E% u8 T赋值结束后, A等于2
& |0 e, d' {) y/ [! Q& N7 F' \
%=
/ X. T" W  F4 v0 N1 F0 A( d" o
先求模,再将结果赋值给左侧操作数" M8 b1 [& r5 H  {& [
A = 7; }. O7 s4 A# M  c' c9 z
B = 3
9 m. C# J8 A5 y: o  k8 cA %= B0 E7 ^7 O) R- h8 X5 v
赋值结束后, A等于10 @' B+ ~: k# x% Q) D: e
**=" X- a* g/ Z5 R, U2 Y$ W% P
先进行幂运算,再将结果赋值给左侧操作数
' f; r' f' c9 T8 V" S0 }' K3 ?
A = 2
5 k2 N+ R: g5 d& K% q: uB = 3
9 i* H7 D4 c6 y. |; z$ mA **= B  ~8 V3 E  T  C9 r( r, y
赋值结束后, A等于8
! E7 J- @' w7 F* @- F
//=
$ n5 X' d7 v/ s  k
先进行整除运算,再将结果赋值给左侧操作数
5 M* v8 [+ @2 e0 L: S$ U2 G
A = 9
( H  _3 S) s. A& q  S% KB = 4: {2 z$ P; w4 L- E" c7 M
A //= B
0 ~' M( S( r" r5 l2 U赋值结束后, A等于2. h4 C) p* m! N% D
回复

使用道具 举报

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

本版积分规则

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

扫一扫关注我们

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