Python資料型別及運算子的詳細總結(程式碼範例)
本篇文章帶給大家的內容是關於Python資料型態及運算子的詳細總結(程式碼範例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
前文講述了Python的輸入輸出以及變數的相關知識點,本節將探討Python的資料型態以及資料之間的運算方式!
一、Python資料類型
上一節弄清楚了變量,其實變數所指向的值是有自己獨特的資料類型的,這些資料類型可能代表不同的數據,在Python中,主要有以下幾種資料型態:
整形(int)
在電腦中,整數的位數其實是有範圍的,並沒有我們想像的那樣擁有無限的位數,而且,在不同的機器上整數的位數可能不同,例如:
32位系統:整數的位數就是32位,尋址範圍為:-231 ~ 231-1 ,即-2147483648 ~ 2147483647
64位元系統:整數的位數就是64位,尋址範圍為:-263# ~ 263-1 ,即-9223372036854775808 ~ 9223372036854775807
長整形(長)
#在Python中,長整數整數並沒有指定整形位數,也就是說說,長整形整數可以無限大,但是由於機器本身的限制,往往並不能無限大,到一定範圍也就不行了。
浮點型(float)
上面兩種資料型態都是整數,但在實際上並不可能全是整數,還有小數啊,於是浮點型便應運而生,說白了浮點型就是小數,可以用科學計數,在計算機中,科學計數的倍數10用e代替,如:5.21x105 就寫成5.21e9,也可以寫成521e7
複數(complex)
上面三種資料型別組合起來是實數,其實科學計算中常常用到複數,在Python中,存在複數的資料型別,一般形式為:x yj,式中x,y都是實數,例如:5 6j
布爾值(True、False)
布爾值就兩個:真、假,Python中用True、False表示,一定要注意首字母大寫,Python中是區分大小寫的,一定要注意。
In [77]: 5==6 Out[77]: False In [78]: 3>2 Out[78]: True In [79]: True == True Out[79]: True In [80]: True == False Out[80]: False
空值(None)
空值就一個:None,這個空值是很有趣的,None不可以理解為0,因為0不是空值,就好像溫度是攝氏0度一樣,0攝氏度是有溫度的( ̄▽ ̄)"
字串(str)
字串可能是寫Python中用到的最多的資料類型,只要是用引號引起來的就是字串。Python中是不區分單引號、雙引號和三引號的,他們是相同的:
##
In [81]: 'Hello,world!' Out[81]: 'Hello,world!' In [82]: "Hello,world!" Out[82]: 'Hello,world!' In [83]: '''Hello,world''' Out[83]: 'Hello,world'
In [84]: 'i'm MinuteSheep' File "<ipython-input-84-a2a810ee38cb>", line 1 'i'm MinuteSheep' ^ SyntaxError: invalid syntax
In [85]: "i'm MinuteSheep" Out[85]: "i'm MinuteSheep"
In [87]: '''i'm MinuteSheep,i said:"i'm the best man in the world!"''' Out[87]: 'i\'m MinuteSheep,i said:"i\'m the best man in the world!"' In [86]: ''' ...: i'm MinuteSheep, ...: i said: ...: "i'm the best man in the world!" ...: ''' Out[86]: '\ni\'m MinuteSheep,\ni said:\n"i\'m the best man in the world!"\n'
對於列表,萌新可能會很陌生,你可以暫時把它理解為一維數組,列表的在Python中的使用次數也是相當多的,是除字符串以外必須掌握的一種數據類型。來看看列表長啥樣:
In [88]: ['MinuteSheep', 'LiMing', '123', 123] Out[88]: ['MinuteSheep', 'LiMing', '123', 123]
In [89]: ['MinuteSheep', ['LiMing', 123]] Out[89]: ['MinuteSheep', ['LiMing', 123]]
In [90]: ('MinuteSheep','LiMing',123) Out[90]: ('MinuteSheep', 'LiMing', 123)
#
字典(dict)
字典是Python的一种非常强大的数据类型,通过键值对的形式将数据保存下来,提高了数据增、删、改、查的速度,通常作为数据存储的格式,也来看看字典长啥样哇:
In [91]: {'name': 'MinuteSheep', 'gender' : 'male', 'age': 99} Out[91]: {'age': 99, 'gender': 'male', 'name': 'MinuteSheep'}
可以看到,字典是用一对花括号括起来的,并且以 'key' : 'value' 的形式存储,同样,字典里面可以包含其他数据类型,上面的字典包括:字符串、整型。当然,字典也可以嵌套:
In [92]: {'name' : 'MinuteSheep', 'age': {'young' : 15, 'old' : 99}} Out[92]: {'age': {'old': 99, 'young': 15}, 'name': 'MinuteSheep'}
字典也会有专门的一节去讲解它的方法。
二、Python数据运算
说完了Python的数据类型,就该数据运算了,养兵千日,用在一时嘛
算数运算
加 +
In [93]: 1+2 Out[93]: 3
减 -
In [95]: 1-2O ut[95]: -1
乘 *
In [96]: 1*2 Out[96]: 2
除 /
In [97]: 5/2Out[97]: 2.5
取模 % (就是取余数)
In [98]: 5%2 Out[98]: 1
取整 //
In [99]: 5//2 Out[99]: 2
幂 **
In [100]: 5**2 Out[100]: 25
赋值运算
简单赋值 =
In [102]: a=5 In [103]: b=6 In [104]: c=a+b In [105]: c Out[105]: 11
加法赋值 += (b+=a,相当于b=b+a)
In [106]: a=5 In [107]: b=6 In [108]: b+=a In [109]: b Out[109]: 11
减法赋值 -= (b-=a,相当于b=b-a)
In [111]: a=5 In [112]: b=6 In [113]: b-=a In [114]: b Out[114]: 1
乘法赋值 *= (b*=a,相当于b=b*a)
In [115]: a=5 In [116]: b=6 In [117]: b*=a In [118]: b Out[118]: 30
除法赋值 /= (b/=a,相当于b=b/a)
In [119]: a=5 In [120]: b=6 In [121]: b/=a In [122]: b Out[122]: 1.2
取模赋值 %= (b%=a,相当于b=b%a)
In [123]: a=5 In [124]: b=6 In [125]: b%=a In [126]: b Out[126]: 1
取整赋值 //= (b//=a,相当于b=b//a)
In [127]: a=5 In [128]: b=6 In [129]: b//=a In [130]: b Out[130]: 1
幂赋值 **= (b**=a,相当于b=b**a)
In [131]: a=5 In [132]: b=6 In [133]: b**=a In [134]: b Out[134]: 7776
比较运算
测试相等 ==
In [136]: 1==1 Out[136]: True In [137]: 1==2 Out[137]: False
不等于 !=
In [144]: 1!=1 Out[144]: False In [145]: 1!=2 Out[145]: True
大于 >
In [146]: 1>1 Out[146]: False In [147]: 2>1 Out[147]: True
大于等于 >=
In [149]: 1>=1 Out[149]: True In [150]: 2>=1 Out[150]: True
小于 <
In [151]: 6<6 Out[151]: False In [152]: 6<7 Out[152]: True
小于等于 <=
In [153]: 6<=6 Out[153]: True In [154]: 6<=7 Out[154]: True
逻辑运算
布尔'与' and (有假为假,全真为真)
In [156]: True and False Out[156]: False In [157]: True and True Out[157]: True In [158]: False and False Out[158]: False
布尔'或' or (有真为真,全假为假)
In [159]: True or True Out[159]: True In [160]: True or False Out[160]: True In [161]: False and False Out[161]: False
布尔'非' not (取相反)
In [162]: not True Out[162]: False In [163]: not False Out[163]: True
身份运算
判断两个标识符是否引用自同一个对象 is
In [167]: a=b=3 In [168]: a is b Out[168]: True In [169]: a=3 In [170]: b=5 In [171]: a is b Out[171]: False
判断两个标识符是否引用自不同对象 is not
In [177]: a=3 In [178]: b=5 In [179]: a is not b Out[179]: True
== 与 is 的区别:
看到这里,很多小伙伴已经晕了,== 和 is 好像一样啊,看起来一样,其实是不一样的,来看下面的这段代码:
In [180]: a = 600 In [181]: b = 600 In [182]: a == b Out[182]: True In [183]: a is b Out[183]: False
其实啊,== 比较的是值,is比较的地址,让我们用 id() 这个函数查看一下变量的地址:
In [184]: id(a) Out[184]: 2155434581648 In [185]: id(b) Out[185]: 2155434581904
可以看到,a和b俩个变量的值虽然相同,但地址却不一样,所以使用 == 和 is 的结果自然就不一样。那我们再来看一段代码:
In [187]: a = 10 In [188]: b = 10 In [189]: a == b Out[189]: True In [190]: a is b Out[190]: True In [191]: id(a) Out[191]: 1529742064 In [192]: id(b) Out[192]: 1529742064
萌新是不是莫不着头脑了,用600的时候 is 输出False,用10的时候怎么地址一样了啊,(快回头,有鬼~)其实啊,Python有一个叫做小整数对象池的东西,只要是[-5, 256]之间的整数都会使用同一份地址,这下萌新明白了哇。
位运算
重点说明:位运算针对的是二进制数
按位与 &
In [193]: a = 15 # 15 = 0000 1111 In [194]: b = 30 # 30 = 0001 1110 In [195]: c = a&b # 14 = 0000 1110 In [196]: c Out[196]: 14
按位或 |
In [193]: a = 15 # 15 = 0000 1111 In [194]: b = 30 # 30 = 0001 1110 In [197]: c = a|b # 31 = 0001 1111 In [198]: c Out[198]: 31
按位异或 ^
In [193]: a = 15 # 15 = 0000 1111 In [194]: b = 30 # 30 = 0001 1110 In [200]: c = a^b # 17 = 0001 0001 In [201]: c Out[201]: 17
按位取反 ~
In [210]: a = 60 # 60 = 0011 1100 In [211]: c = ~a # -61 = 1100 0011 In [212]: c Out[212]: -61
左移 <<
In [213]: a = 15 # 15 = 0000 1111 In [214]: c = a<<2 # 60 = 0011 1100 In [215]: c Out[215]: 60#左移后面要加位数
右移 >>
In [213]: a = 15 # 15 = 0000 1111 In [218]: c = a>>2 # 3 = 0000 0011 In [219]: c Out[219]: 3#右移后面要加位数
Python运算符优先级(从高到底依次排列)
** # 指数 (最高优先级) ~ + - # 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) * / % // # 乘,除,取模和取整除 + - # 加法减法 >> << # 右移,左移运算符 & # 位 'AND' ^ | # 位运算符 <= < > >= # 比较运算符 <> == != # 等于运算符 = %= /= //= -= += *= **= # 赋值运算符 is is not # 身份运算符 in not in # 成员运算符 not and or # 逻辑运算符
以上是Python資料型別及運算子的詳細總結(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
