1. 程式人生 > >python3 語句及運算子

python3 語句及運算子

關鍵字

一   if語句  

                  if conditoin_1 :

                               statement_block_1

                   elif 

 condition_2

                               statement_block_2

                   else :

                                statement_block_3

conditoin可以使用 if(表示式) 或 空格分隔(如 if b>0 )

二 無switch語句

 

三 迴圈

   1. 關鍵字while

            while   判斷條件

                        語句   

            [else 

                        語句]

   2、關鍵字for

            for  <variable>  in <sequence>

                          <statements>

            [else 

                           語句]


   3.range()函式 指定區間

           語法:range(start, stop[, step])

  • start: 計數從 start 開始。預設是從 0 開始。例如range(5)等價於range(0, 5);
  • stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
  • step:步長,預設為1。例如:range(0, 5) 等價於 range(0, 5, 1)
  • >>> type(range(10))     #range返回型別為range物件 但是可以利用 list 函式返回列表
    <class 'range'>

     

          setp     >  0                setp     <  0                setp     =   0
start   >    stop
start   <  stop
start   =  stop

       結論

  • 1. range()函式中  step 不能等於0 , 為0報錯
  • 2.range()函式中   若step > 0 時 當且僅當 start   >  stop有意義,否則為空
  • 3.range()函式中   若step < 0 時 當且僅當 start   <  stop有意義,否則為空
  • 4.range()函式中   start   = stop  為空

四 函式

         0.返回值 return

  •          相當於退出函式並 向呼叫放返回一個表示式 
  •          不帶return語句 返回None

         1.關鍵字def

                     def 函式名(引數列表) : 

                                 函式體

  •          所有引數都是按 引用傳遞
  •          允許預設引數 
  •          不定長引數   語法格式: *引數  引數前加星號(*)  在函式呼叫是未指定其引數則為空元組
def fun( a1, *a) :
    print(a)
    print( typr(a) )

a=fun(1)
fun(1,2,3)
print(a)

#結果
()
<class 'tuple'>
(2, 3)
<class 'tuple'>
None

         2.匿名函式 lambda (lambda 引數:返回值)

  •                         定義: lambda [arg1 [,arg2,...argn]] : expression
  • 使用 :  
  • a = lambda x:x**2
    
    print(a) 
    print( a(10))
    
    #結果
    <function <lambda> at 0x7f5d4e4c62f0>
    100
    
    def op(c):
    	if c =='+':
     		return lambda x,y: x+y
    a=op('+')
    b=op('+')
    print(a)
    print(b)
    print(a(1,2))
    print(b(2,3))
    #結果                                                             
    <function op.<locals>.<lambda> at 0x7feabd07e598>
    <function op.<locals>.<lambda> at 0x7feabd07e620>
    3
    5
    匿名函式跟普通函式一樣也是函式物件,並且同以匿名函式的例項地址不同
  • 匿名函式的定義過程 相當於 一個表示式             

五 運算子

 

 

優先順序由高到低 顏色部分為 插入(不包含在運算子種類裡)

同一行的運算子優先順序相同

特殊說明
算術運算子

                   **

(+ - ~  一元加減號 取反)

       /           *          %         // 

                +          -             

2**3=8 ** 冪運算

/  相除得要浮點數    

//返回商的整數部分        

位運算子 (按位運算)

 

                   ~

      <<                      >>

                   & 

              |            ^ 

 

                                      取反

 左移(高位丟棄,低位補0)                   右移

                                     與

                          或                      異或 

比較(關係)運算子

>=          >            <           <=

       ==         !=           <>

!= 和 <> 都表示 不等於  優先順序 >= <= > < 更高一些
賦值運算子

+=          *=         **=         -=          /=           //=       %= 

身份運算子 is                             not  is i身份運算子用於比較兩個物件的儲存單元  返回值規律同下
成員運算子 in                             not in in 在 返回True        not in 不在返回 True
邏輯運算子(布林運算) and             or               not     邏輯與           邏輯或          邏輯非