日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

详解7类Python运算符及代码举例

發布時間:2025/3/15 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 详解7类Python运算符及代码举例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

導讀:運算這一概念起源于數學,即通過運算法使參與運算的元素得出確定且可重復的結果。作為計算機的核心功能,運算架構起計算機系統的邏輯體系。計算機運算并不局限于普通的數學計算,它更貼近于“邏輯推算”這一概念,其根本目的就是實現邏輯推算。

?

運算符是運算法則的具體體現。Python提供了算術運算符、賦值運算符、比較運算符、邏輯運算符、位運算符、身份運算符和成員運算符7類運算符,從而實現了豐富多樣的運算功能。

?

作者:李明江 張良均 周東平 張尚佳

來源:大數據DT(ID:bigdatadt)

?

?

?

01 算術運算符

?

算術運算符是對運算數進行算術運算的一系列符號,能夠滿足一般的運算需求。Python中的算術運算符如下所示。

?

  • +:加,兩個對象相加

  • -:減,得到負數或一個數減去另一個數

  • *:乘,兩個數相乘或返回一個被重復若干次的字符串

  • /:除,x除以y

  • %:取模,返回除法的余數

  • **:冪,返回x的y次冪

  • //:取整除,返回商的整數部分

?

算術運算結果的數字類型與運算數的類型有關。進行除法(/)運算時,不管商為整數還是浮點數,運算結果始終為浮點數。要得到整型的商,需要用雙斜杠(//)做整除,且除數必須是整型的。對于其他的運算,只要任一運算數為浮點數,運算結果就是浮點數。Python算術運算的基礎使用方法如下所示。

?

num_int?=?4 num_float?=?4.0 print('整數與浮點數的和為:',?num_int?+?num_float)????#Out[1]:?整數與浮點數的和為:8.0????print('整數與浮點數的差為:',?num_int?-?num_float)#Out[2]:?整數與浮點數的差為:?0.0????print('整數與浮點數的積為:',?num_int?*?num_float)#Out[3]:?整數與浮點數的積為:16.0????print('浮點數與整數的商為:',?num_float?/?num_int)#Out[4]:?浮點數與整數的商為:1.0????print('浮點數對整數取模結果為:',?num_float?%?num_int)#Out[5]:?浮點數對整數取模結果為:?0.0????print('浮點數的整數次冪為:',?num_float?**?num_int)#Out[6]:?浮點數的整數次冪為:256.0????

?

?

02 賦值運算符

?

賦值運算符用于變量的賦值和更新。Python的賦值運算符除基礎賦值運算符(=)外,還包括加法賦值運算符、減法賦值運算符等。嚴格地說,除基礎賦值運算符外,其他都屬于特殊的賦值運算符。Python中的賦值運算符如下所示。

?

  • =:賦值運算

  • +=:加法賦值運算

  • -=:減法賦值運算

  • *=:乘法賦值運算

  • /=:除法賦值運算

  • %=:取模賦值運算

  • **=:冪賦值運算

  • //=:取整除賦值運算

?

表2-2中的特殊賦值運算符可以看作變量的快速更新,更新意味著該變量是存在的,而對于一個之前不存在的變量,不能使用特殊的賦值運算符。Python賦值運算的基礎使用方法如下所示。

?

num_int1?=?4 print('賦值后num_int1為:',?num_int1)#Out[7]:?賦值后num_int1為:4num_int1?=?4?+?6 print('賦值后num_int1為:',?num_int1)#Out[8]:?賦值后num_int1為:10num_int1?=?4?*?2 print('賦值后num_int1為:',?num_int1)#Out[9]:?賦值后num_int1為:8num_int1?=?4?/?2 print('賦值后num_int1為:',?num_int1)#Out[10]:?賦值后num_int1為:2.0num_int1?=?4?%?2 print('賦值后num_int1為:',?num_int1)#Out[11]:?賦值后num_int1為:?0num_int1?=?4?**?2 print('賦值后num_int1為:',?num_int1)#Out[12]:?賦值后num_int1為:16

?

?

?

03 比較運算符

?

比較運算符用于對比數之間的大小或是否相等。Python中的比較運算符如下所示。

?

  • ==:表示等于,比較對象是否相等

  • !=:表示不等于,比較兩個對象是否不等

  • >:表示大于,返回x是否大于y

  • <:表示小于,返回x是否小于y。所有比較運算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價。注意,這些變量名的首字母大寫

  • >=:表示大于等于,返回x是否大于等于y

  • <=:表示小于等于,返回x是否小于等于y

?

比較運算符也可用于字符之間的比較。Python中的字符使用ASCII編碼,每個字符都有屬于自己的ASCII碼,字符比較的本質是字符ASCII碼的比較。Python比較運算的基礎使用方法如下所示。

?

num_int?=?4 num_float?=?4.0 print('num_int與num_float是否相等:',?num_int?==?num_float)#Out[13]: num_int與num_float是否相等:Trueprint('num_int與num_float是否不相等:',?num_int?!=?num_float)#Out[14]: num_int與num_float是否不等:Falseprint('num_int是否大于num_float:',?num_int?>?num_float)#Out[15]: num_int是否大于num_float:Falseprint('num_int是否小于num_float:',?num_int?<?num_float)#Out[16]: num_int是否小于num_float:Falseprint('num_int是否大于等于numfloat:',?num_int?>=?num_float)#Out[17]: num_int是否大于等于numfloat:Trueprint('num_int是否小于等于num_float:',?num_int?<=?num_float)#Out[18]: num_int是否小于等于num_float:True

?

?

?

04 邏輯運算符

?

邏輯運算即判斷事物之間的“與”“或”“非”關系,Python中的邏輯運算符包含and、or、not,如下所示。

?

  • and,x and y:表示與,x為False時,“x and y”返回False,否則返回y的計算值

  • or,x or y:表示或,x為True時,“x or y”返回x的值,否則返回y的計算值

  • not,not x:表示非,x為True時,“not x”返回False,否則返回True

?

Python邏輯運算的基礎使用方法如下所示。

?

num_bool1?=?False num_bool2?=?True print('num_bool1 and num_bool2返回值為:',?num_bool1?and?num_bool2)????#Out[19]: num_bool1 and num_bool2返回值為:False ???print('num_bool1 or num_bool2返回值為:',?num_bool1?or?num_bool2)????#Out[20]: num_bool1 or num_bool2返回值為:True ???print('not num_bool2的返回值為:',?not?(num_bool2))????#Out[21]: not num_bool2的返回值為:False ???

?

?

?

05 按位運算符

?

十進制數被人們廣泛使用,但對于計算機而言,二進制數反而是更重要的,計算機的一切計算都建立在二進制數計算的基礎上。按位運算是一種將十進制數轉為二進制數再進行運算的過程。Python中的位運算符如下所示。

?

  • &:表示按位與,參與運算的兩個值相應位都為1,則該位的結果為1,否則為0

  • |:表示按位或,只要對應的兩個二進制位有一個為1,結果位就為1

  • ^:表示按位異或,當兩個對應的二進制位相異時,結果為1

  • ~:表示按位取反,對每個二進制位取反,把1變為0,把0變為1。~x類似于-x-1

  • <<:表示左移,二進制位左移,由“<<”右邊的數指定移動位數,高位丟棄,低位補0

  • >>:表示右移,“>>”左邊運算數的二進制位全部右移,“>>”右邊的數指定移動的位數

?

Python按位運算的基礎使用方法如下所示。

?

num_int1?=?15??#?15?=?00001111 num_int2?=?23??#?23?=?00010111 #?按位與,num_int1 & num_int2 =?00000111 print('num_int1按位與num_int2結果為:',?num_int1?&?num_int2)#Out[22]: num_int1按位與num_int2結果為:7#?按位或,num_int1 | num_int2 =?00011111 print('num_int1按位或num_int2結果為:',?num_int1?|?num_int2)#Out[23]: num_int1按位或num_int2結果為:31 ???#?按位異或,num_int1 ^ num_int2 =?00011000 print('num_int1按位異或num_int2結果為:',?num_int1?^?num_int2)#Out[24]: num_int1按位異或num_int2結果為:24#?按位取反,~ num_int1 = 11110000 print('num_int1按位取反結果為:',?~?num_int1)#Out[25]: num_int1按位取反結果為:?-16#?左移動兩位,num_int1?<<?2?=?00111100 print('num_int1左移動兩位結果為:',?num_int1?<<?2)#Out[26]: num_int1左移動兩位結果為:60#?右移動兩位,num_int1?>>?2?=?00000011 print('num_int1右移動兩位結果為:',?num_int1?>>?2)#Out[27]: num_int1右移動兩位結果為:3

?

?

在按位運算中,取反運算較難理解,因為涉及補碼的計算。

?

十進制數的二進制原碼包括符號位和二進制值。以“60”為例,其二進制原碼為“00111100”,第1位為符號位,0代表正數,1則代表負數。正數的補碼與二進制原碼相同,負數的補碼則為二進制原碼符號位保持不變,其余各位取反后再在最后一位上加1。

?

取反操作可以總結為以下5個步驟。

?

  • 取十進制數的二進制原碼。

  • 對原碼取補碼。

  • 補碼取反(得到最終結果的補碼)。

  • 取反結果再取補碼(得到最終結果的原碼)。

  • 二進制原碼轉十進制數。

  • ?

    ?

    06 身份運算符

    ?

    身份運算符用于比較兩個對象的儲存單位,如下所示。

    ?

    • is:is用于判斷兩個對象的儲存單位是否相同

    • is not:is not用于判斷兩個對象的儲存單位是否不同

    ?

    Python身份運算的基礎使用方法如下所示。

    ?

    num_int1?=?15 num_int3?=?15 print('num_int1與num_int3儲存單位是否相同:',?num_int1?is?num_int3)#Out[28]: num_int1與num_int3儲存單位是否相同:Truenum_int2?=?15.0 print('num_int1與num_int2儲存單位是否相同:',?num_int1?is?num_int2)#Out[29]: num_int1與num_int2儲存單位是否相同:False#?如果儲存單位相同就返回True,否則返回False print('num_int1與num_int3儲存單位是否不同:',?num_int1?is?not?num_int3)#Out[30]: num_int1與num_int3儲存單位是否不同:Falseprint('num_int1與num_int2儲存單位是否不同:',?num_int1?is?not?num_int2)#Out[31]: num_int1與num_int2儲存單位是否不同:True

    ?

    ?

    在身份運算中,內存地址相同的兩個變量進行is運算時,返回True;內存地址不同的兩個變量進行is not運算時,返回True。當a、b獲取到一樣的值時,兩個變量就獲取同樣的內存地址。

    ?

    ?

    07 成員運算符

    ?

    成員運算符的作用是判斷某個指定值是否存在某一序列中,包括字符串、列表和元組,如下所示。

    ?

    • in:如果在指定序列中找到指定值,返回True,否則返回False

    • not in:如果在指定序列中沒找到指定值,返回True,否則返回False

    ?

    Python成員運算的基礎使用方法如下所示。

    ?

    num_int1?=?15 list2?=?[1,?'apple',?15]print('num_int1是否在list2中:',?num_int1?in?list2)#Out[32]: num_int1是否在list2中:Truearray?=?('orange',?6,?15) print('num_int1是否不在array中:',?num_int1?not?in?array)#Out[33]: num_int1是否不在array中:False

    ?

    ?

    08 運算符優先級

    ?

    在Python中,運算符操作很常見,運算通常以表達式的形式進行。表達式由運算符和運算數組成,比如“1+2”就是一個表達式,其中的“+”是運算符,“1”和“2”則是運算數。一個表達式往往包含不止一個運算符,當一個表達式中存在多個運算符時,就需要考慮運算的順序,即運算符的優先級。

    ?

    運算符的優先級如下所示,優先級從上往下依次降低,同一優先級的運算符按從左到右的順序進行運算。

    ?

  • **:指數(最高優先級)

  • ~ + -:按位翻轉,一元加號和減號(最后兩個的方法名為+@和-@)

  • * / % //:乘、除、取模和取整除

  • + -:加法、減法

  • >> <<:右移、左移運算符

  • &:位“AND”

  • ^ |:位運算符

  • <= < > >=:比較運算符

  • <> == !=:等于運算符

  • = %= /= //= -= += *= **=:賦值運算符

  • is is not:身份運算符

  • in not in:成員運算符

  • and or not:邏輯運算符

  • ?

    運算符優先級的基礎使用方法如下所示。

    ?

    ?

    #?先執行乘除法運算,再執行加減法運算 print('num_float?+?num_int1?/?num_int3?=',?num_float?+?num_int1?/?num_int3) #Out[34]:?num_float?+?num_int1?/?num_int3?=?5.0#?先執行加減法運算,再執行比較運算 print('num_int1 - num_int2 > num_int1 - num_int3:',num_int1?-?num_int2?>?num_int1?-?num_int3)#Out[35]: num_int1 - num_int2 > num_int1 - num_int3:False#?先執行加減法運算,再做身份判斷 print('num_int1 - num_int3 + num_int1 is num_int1:',num_int1?-?num_int3?+?num_int1?is?num_int1)#Out[36]: num_int1 - num_int3 + num_int1 is num_int1:True#?先執行指數運算,再執行減法運算,最后做身份判斷 print('num_float ** 2 - 1 is not num_int2:',num_float?**?2?-?1?is?not?num_int2)#Out[37]: num_float ** 2 - 1 is not num_int2:True

    ?

    關于作者:李明江,資深大數據專家,貴州省計算機學會常務理事,黔南州大數據專家委員會委員,黔南州計算機學會會長,黔南州教育信息化建設專家庫專家,黔南民族師范學院計算機與信息學院院長,全國高校大數據教育聯盟理事。

    張良均,資深大數據挖掘與分析專家、模式識別專家、AI技術專家。有10余年大數據挖掘與分析經驗,擅長Python、R、Hadoop、Matlab等技術實現的數據挖掘與分析,對機器學習等AI技術驅動的數據分析也有深入研究。

    ?

    本文摘編自《Python3智能數據分析快速入門》,經出版方授權發布。

    ?

    延伸閱讀《Python3智能數據分析快速入門》

    點擊上圖了解及購買

    轉載請聯系微信:DoctorData

    ?

    推薦語:本書假設你有一定的數據分析基礎,但是沒有Python和AI基礎,為了幫助你快速掌握智能數據分析需要的技術和方法,書中有針對性地講解了Python和AI中必須要掌握的知識點,內容由淺入深,循序漸進。從環境配置、基本語法、基礎函數到第三方庫的安裝與使用,對各個操作步驟、函數、工具、代碼示例等的講解非常詳盡,確保所有滿足條件的讀者都能快速入門。

    ?

    ?

    「大數據」內容合伙人之「鑒書小分隊」上線啦!

    ?

    最近,你都在讀什么書?有哪些心得體會想要跟大家分享?

    ?

    數據叔最近搞了個大事——聯合優質圖書出版商機械工業出版社華章公司發起鑒書活動。

    ?

    簡單說就是:你可以免費讀新書,你可以免費讀新書的同時,順手碼一篇讀書筆記就行。詳情請在大數據公眾號后臺對話框回復合伙人查看。

    ?

    ?

    有話要說?

    ?

    Q:?你最常用哪類運算?

    歡迎留言與大家分享

    ?

    猜你想看?

    ?

    • ?

    • ?

    • ?

    • ?

    ?

    更多精彩?

    ?

    在公眾號對話框輸入以下關鍵詞

    查看更多優質內容!

    ?

    PPT?|?報告?|?讀書?|?書單?|?干貨?

    大數據?|?揭秘?|?Python?|?可視化

    AI?|?人工智能?|?5G?|?中臺

    機器學習?|?深度學習?|?神經網絡

    合伙人?|?1024?|?段子?|?數學

    ?

    據統計,99%的大咖都完成了這個神操作

    ?

    ?

    ?

    覺得不錯,請把這篇文章分享給你的朋友

    轉載 / 投稿請聯系:baiyu@hzbook.com

    更多精彩,請在后臺點擊“歷史文章”查看

    點擊閱讀原文,了解更多

    總結

    以上是生活随笔為你收集整理的详解7类Python运算符及代码举例的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。