您好,登錄后才能下訂單哦!
這篇文章主要介紹python中有什么內置數據類型,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
說數據類型之前,請思考一下下面幾個問題:
數據是怎么存的呢?
數據類型有啥作用呢?
各種數據類型有啥區別呢?
要想回答這些問題,首先還是要先了解一下變量的概念。那么何為變量呢?
變量(Variable)可以看成是一個存放數據的盒子,每個變量都有一個指定的名字,通過變量名就可以找到變量中存放的數據。從底層的邏輯來看,變量就是在電腦內存中開辟一個區域,然后被存放的數據放在該區域中。
與變量相對應的是常量(Constant),他們都是用來存放數據的,不同的是常量一旦保存數據之后就不能修改了,而變量保存的數據可以被多次修改。
編程語言中,將數據放入變量的過程叫做賦值(Assignment),Python中使用等號=作為賦值運算符,變量是標識符的一種,所以變量的命名也是需要遵守Python標識符的命名規范。
name=value
這里的name就是變量名,而value就是要到變量中的數據。一個變量只能容納一個值,當一個變量被賦值之后,再次賦值的話就會覆蓋掉原來的值。
舉個栗子:
a=100
就是將數字100賦值給變量a。
解釋了變量的概念之后,就解決了第一問題,那就是數據是通過變量存在內存中的,當然也可以將數據持久化到硬盤中。
理清楚變量的概念之后,接下來總體介紹一下Python中各種內置的數據類型,如下圖思維導圖顯示的,數據類型有很多,本文將主要介紹屬于數字的幾個數據類型。其余的數據類型在后續的文章中會介紹到。
數據類型 | 作用 | 數據格式 | 舉例 |
---|---|---|---|
int(整數) | 用于存放整數 | 100 | 100 |
float(小數) | 用于存放小數 | 書寫時必須包含小數點 | 100.1 |
complex(復數) | 用于存放二元有序實數對 | a+bj | |
bool(布爾類型) | 用于存放布爾值True或者False | True |
不同于其他強類型的編程語言(比如Java,C語言等),Python是弱類型的語言,其主要體現在
定義變量的時候不需要強制指定變量的數據類型。變量無須聲明就可以直接賦值,對一個不存在的變量賦值就相當于定義一個新變量。
變量的數據類型可以隨時改變,比如,同一個變量可以一會被賦值為整數,一會被賦值為字符串。
依然是舉栗說明:比如定義一個變量a,并將100賦值給它,Java中的寫法是:
int a=100
Python中的寫法是:
a=100
可以看出Java中必須聲明變量a的數據類型int,聲明之后就只能向變量a中賦值整數,而不能賦值字符串等其他類型的數據。而Python則沒有這些限制。
弱數據類型并不等于沒有數據類型,這是在書寫的時候不用刻意聲明數據類型,但是在編程語言的內部還是有數據類型的,可以通過type() 方法進行查看其數據類型。
>>> type(100) <class 'int'> >>> type(100.1) <class 'float'> >>> type(True) <class 'bool'> >>> type(2+10j) <class 'complex'>
Python3中的整數是不分類型,也就是說沒有長整數類型(Long)或者短整數類型(short)之分,它的取值范圍是是無限的,即不管多大或者多小的數字,Python都能輕松的應對。如下就是兩個極大或者極小的整數。
>>> 100000-0000000000000000000000000000000000000000 1000000000000000000000000000000000000000000000 >>> print(-1000000000000000000000000000000000000000000000) -1000000000000000000000000000000000000000000000
可以看出再大或者再小的數字都不會出現溢出的情況,這說明了Python對整數的處理能力非常強。
Python中可以用多種進制的來表示整數。
十進制形式
我們平時常見的整數就是十進制形式,它由 0~9 共十個數字排列組合而成。
注意,使用十進制形式的整數不能以 0 作為開頭,除非這個數值本身就是 0。
二進制形式
由 0 和 1 兩個數字組成,書寫時以0b或0B開頭。例如,1001對應十進制數是 9。
八進制形式
八進制整數由 0~7 共八個數字組成,以0o或0O開頭。注意,第一個符號是數字 0,第二個符號是大寫或小寫的字母 O。
十六進制形式
由 0~9 十個數字以及 A~F(或 a~f)六個字母組成,書寫時以0x或0X開頭。
# 二進制 a=0b1001 print('a=',a) # 八進制 b=0o207 print('b=',b) # 十六進制 c=0x45 print('c=',c)
運行結果是:
a= 9 b= 135 c= 69
Python 3.x允許使用下劃線_作為數字(包括整數和小數)的分隔符,通常每隔三個數字添加一個下劃線,比如:click = 1_301_547
在編程語言中,小數通常以浮點數的形式存儲,浮點數和定點數是相對的;小數在存儲過程中如果小數點發生移動,就稱為浮點數;如果小數點不動,就稱為定點數。
Python中的小數有兩種書寫形式:
十進制形式
這就是我們經常看到的小數形式,比如101.1;234.5;0.23
指數形式
Python小數點指數形式的寫法為:aEn或aen
a為尾數部分,是一個十進制,n為指數部分,是一個十進制,E或者e是固定的字符,用于分割尾數部分和指數部分,真的表達式是 a×10n。
舉個栗子:
2.3E5=2.3x10的5次方
依然還舉個栗子:
x=10.01 print('x=',x) y=-0.031 print('y=',y) z=2.3E10 print('z=',z) w=-0.00000001 print('w=',w)
運行結果是:
x= 10.01 y= -0.031 z= 23000000000.0 w= -1e-08
復數(complex)是由實部(real)和虛部(imag)構成,在Python中,復數的虛部以j或者J作為后綴,具體格式是:
a+bj
其中a表示實部,b表示虛部
c1=100+2j print("c1的值是:",c1) c2=200+3J print('C2的值是:',c2)
運行結果是:
c1的值是 (100+2j) C2的值是 (200+3j)
布爾類型用來表示真(對)或假(錯),比如常見的3>2 比較算式,這個是正確的,Python中使用True來代表;再比如2>3 比較算式,這個是錯誤的,用False來代表。
print(3>2) print(2>3) print('True==1的結果是:',True==1) print('False==0的結果是:',False==0)
運行結果是:
True False True==1的結果是: True False==0的結果是: True
從上述代碼可以看出,bool類型的True值對應整數值1,而False值對應整數值0。
以上是“python中有什么內置數據類型”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。