目錄
- Python的內置數據類型中的數字
- 1、變量
- 2、數據類型總覽
- 3、Python是弱類型的語言
- 4、各數據類型的詳細介紹
- 4.1 整數(int)
- 4.2 浮點數/小數(float)
- 5、復數(complex)
- 6、布爾類型(bool)
Python的內置數據類型中的數字
1、變量
說數據類型之前,我們要先思考一下下面幾個問題:
- 數據是怎么存的呢?
- 數據類型有啥作用呢?
- 各種數據類型有啥區別呢?
要想回答這些問題,首先還是要先了解一下變量的概念。那么何為變量呢?
變量
(Variable
)可以看成是一個存放數據的盒子,每個變量都有一個指定的名字,通過變量名就可以找到變量中存放的數據。從底層的邏輯來看,變量就是在電腦內存中開辟一個區域,然后被存放的數據放在該區域中。
與變量相對應的是常量(Constant
),他們都是用來存放數據的,不同的是常量一旦保存數據之后就不能修改了,而變量保存的數據可以被多次修改。
編程語言中,將數據放入變量的過程叫做賦值(Assignment),Python中使用等號=作為賦值運算符,變量是標識符的一種,所以變量的命名也是需要遵守Python標識符的命名規范。
name=value
這里的name就是變量名,而value就是要到變量中的數據。一個變量只能容納一個值,當一個變量被賦值之后,再次賦值的話就會覆蓋掉原來的值。
舉個栗子:
a=100
就是將數字100賦值給變量a。
解釋了變量的概念之后,就解決了第一問題,那就是數據是通過變量存在內存中的,當然也可以將數據持久化到硬盤中。
2、數據類型總覽
理清楚變量的概念之后,接下來總體介紹一下Python中各種內置的數據類型,如下圖思維導圖顯示的,數據類型有很多,本文將主要介紹屬于數字的幾個數據類型。其余的數據類型在后續的文章中會介紹到。

3、
3、Python是弱類型的語言
不同于其他強類型的編程語言(比如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'>
4、各數據類型的詳細介紹
4.1 整數(int)
Python3中的整數是不分類型,也就是說沒有長整數類型(Long)或者短整數類型(short)之分,它的取值范圍是是無限的,即不管多大或者多小的數字,Python都能輕松的應對。如下就是兩個極大或者極小的整數。
>>> 100000-0000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000
>>> print(-1000000000000000000000000000000000000000000000)
-1000000000000000000000000000000000000000000000
可以看出再大或者再小的數字都不會出現溢出的情況,這說明了Python對整數的處理能力非常強。
4.1.1 整數的不同進制
Python中可以用多種進制的來表示整數。
(1)十進制形式
我們平時常見的整數就是十進制形式,它由 0~9 共十個數字排列組合而成。
注意,使用十進制形式的整數不能以 0 作為開頭,除非這個數值本身就是 0。
(2)二進制形式
由 0 和 1 兩個數字組成,書寫時以0b或0B開頭。例如,1001對應十進制數是 9。
(3)八進制形式
八進制整數由 0~7 共八個數字組成,以0o或0O開頭。注意,第一個符號是數字 0,第二個符號是大寫或小寫的字母 O。
(4)十六進制形式
由 0~9 十個數字以及 A~F(或 a~f)六個字母組成,書寫時以0x或0X開頭。
# 二進制
a=0b1001
print('a=',a)
# 八進制
b=0o207
print('b=',b)
# 十六進制
c=0x45
print('c=',c)
運行結果是:
Python 3.x允許使用下劃線_作為數字(包括整數和小數)的分隔符,通常每隔三個數字添加一個下劃線,比如:click = 1_301_547
4.2 浮點數/小數(float)
在編程語言中,小數通常以浮點數的形式存儲,浮點數和定點數是相對的;小數在存儲過程中如果小數點發生移動,就稱為浮點數;如果小數點不動,就稱為定點數。
4.2.1 小數的書寫形式
Python中的小數有兩種書寫形式:
(1)十進制形式
這就是我們經常看到的小數形式,比如101.1;234.5;0.23
(2)指數形式
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
5、復數(complex)
復數(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)
6、布爾類型(bool)
布爾類型用來表示真(對)或假(錯),比如常見的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的內置數據類型中的數字的文章就介紹到這了,更多相關Python內置數據類型數字內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- python 類相關概念理解
- Python入門變量的定義及類型理解
- python學習之新式類和舊式類講解
- python入門課程第四講之內置數據類型有哪些
- Python類的高級函數詳解
- 一篇文章帶你了解Python中的類