python基礎之運算符

運算符&表達式

  1. 賦值運算符

        str='spam'
        m,n=10,20
        [s1,s2]=['hello','python']
        a,b,c,d='spam'
        x,*y='spam' #等價於x,y='spam'[0],'spam'[1:]
        #x,*y,z='spam'
        e=f=20
        g+=20
    

    demo

        l=[1,2,3,4,5]
        while l:
            front,*l=l
            print(front)
    

    注意: *l每次得到的都是一個列表,如果沒有數據就是空列表。

  2. 算術運算符

        **	冪 - 返回x的y次冪	a**b 爲10的20次方, 輸出結果 100000000000000000000
    
        //	取整除 - 返回商的整數部分
        import math
    
        f=-3.89
        
        print(f//1)
        
        print(math.floor(f))
        print(math.trunc(f))
        # 9//2 輸出結果 4 ,             
        9.0//2.0 輸出結果 4.0
    
  3. 比較運算符

    == 等於 - 比較對象是否相等
    <>或者!= 兩者相同 #在python3中<>被移除

    比較預算符 x<y<z 等價於 x<y and y<z

  4. Python邏輯運算符

    • and
      
    • not
      
    • or
      
  5. Python成員運算符

    運算符 描述 實例
    in 如果在指定的序列中找到值返回 True,否則返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
    not in 如果在指定的序列中沒有找到值返回 True,否則返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
        arr=['python','java','c++']
        print('c++' in arr)
        print('c' not in arr)
    
  6. Python身份運算符

    運算符 描述 實例
    is is 是判斷兩個標識符是不是引用自一個對象 x is y, 類似 id(x) == id(y) , 如果引用的是同一個對象則返回 True,否則返回 False
    is not is not 是判斷兩個標識符是不是引用自不同對象 x is not y , 類似 id(a) != id(b)。如果引用的不是同一個對象則返回結果 True,否則返回 False。

    is 與 == 區別:
    is 用於判斷兩個變量引用對象是否爲同一個, == 用於判斷引用變量的值是否相等。

    a=20
    b=20
    c=30
    print(a is b) #True
    print(id(a)==id(b)) #True
    print(b is c) #False
    

    python中會爲每個出現的對象分配內存,哪怕他們的值完全相等(注意是相等不是相同)。如執行a=2.0,b=2.0這兩個語句時會先後爲2.0這個Float類型對象分配內存,然後將a與b分別指向這兩個對象。所以a與b指向的不是同一對象:

    但是爲了提高內存利用效率對於一些簡單的對象,如一些數值較小的int對象,python採取重用對象內存的辦法,如指向a=2,b=2時,由於2作爲簡單的int類型且數值小,python不會兩次爲其分配內存,而是隻分配一次,然後將a與b同時指向已分配的對象:

    Python 中沒有 ++ 或 – 自運算符

  7. 強制類型轉換

        int(3.1415)
        float(3)
    

    python中類型轉換僅限於數字,比如數字加上字符串則報錯。

        res=3+'2.5' #error
        res=3+float('2.5')
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章