? ? ? 變量存儲在內存中的值,這就意味著在創(chuàng)建變量時會在內存中開辟一個空間啸澡。 基于變量的數據類型袖订,解釋器會分配指定內存,并決定什么數據可以被存儲在內存中嗅虏。因此洛姑,變量可以指定不同的數據類型,這些變量就可以存儲整數皮服,小數或字符楞艾。
標準數據類型
? ? ? 在內存中存儲的數據可以有多種類型。例如龄广,person.s硫眯,年齡作為一個數值存儲而地址為字母數字字符存儲。Python有一些標準類型用于定義操作上择同,存儲變量和每個變量的方法可能两入。
? ? ? Python有五個標準的數據類型:
? ? ? ● Number(數字)
? ? ? ● String (字符串)
? ? ? ● List (列表)
? ? ? ● Tuple (元組)
? ? ? ● Dictionary (字典)
Python數字:
? ? ? Python Number 數據類型用于存儲數值。它們是不可變的數據類型奠衔,這意味著如果改變Number數據類型的值將重新分配內存空間谆刨。
? ? ? 在變量賦值時 Number 對象將被創(chuàng)建塘娶。例如:
var1 = 1
var2 = 10
? ? ? 也可以使用del語句刪去有一些對象。 del語句的語法是:
del var1[,var2[,var3[....,varN]]]]
? ? ? 也可以使用del語句刪除單個或多個對象痊夭。例如:
del var
del var_a, var_b
? ? ? Python支持四種不同的數值類型:
? ? ? ● int (有符號整數)
? ? ? ● long (長整數[也可以以八進制和十六進制表示])
? ? ? ● float (浮點實數值)
? ? ? ● complex (復數)
* int (整型)
? ? ? 整型(Int)- 通常被稱為是整型或整數刁岸,是正或負整數,不帶小數點她我。
? ? ? 在Python內部對整數的處理分為普通整數和長整數虹曙,普通整數長度為機器位長,通常都是32位番舆,超過這個范圍的整數就自動當長整數處理酝碳,而長整數的范圍幾乎完全沒限制。
? ? ? Python可以處理任意大小的整數恨狈,當然包括負整數疏哗,在程序中的表示方法和數學上的寫法一模一樣,例如:1禾怠,100返奉,-8080,0吗氏,等等芽偏。
? ? ? 在32位機器上,整數的位數為32位弦讽,取值范圍為-2**31~2**31-1污尉,即-2147483648~2147483647。
? ? ?在64位系統(tǒng)上往产,整數的位數為64位被碗,取值范圍為-2**63~2**63-1,即-9223372036854775808~9223372036854775807捂齐。
* long (長整型)
? ? ? 長整型(long integers)- 無限大小的整數蛮放,整數最后是一個大寫或小寫的L。長整型也可以使用小寫"L"奠宜,但是還是建議使用大寫"L"包颁,避免與數字"1"混淆。Python使用"L"來顯示長整型压真。
* float (浮點型)
? ? ? 浮點型(floating point real values)- 浮點型由整數部分與小數部分組成娩嚼,浮點型也可以使用科學計數法表示(2.5e2 = 2.5 x 102= 250)
? ? ? Python的浮點數就是數學中的小數,類似C語言中的double滴肿。
? ? ? 在運算中岳悟,整數與浮點數運算的結果是浮點數。
? ? ? 浮點數也就是小數,之所以稱為浮點數贵少,是因為按照科學記數法表示時呵俏,一個浮點數的小數點位置是可變的,比如滔灶,1.23x109和12.3x108是相等的普碎。浮點數可以用數學寫法,如1.23录平,3.14麻车,-9.01,等等斗这。但是對于很大或很小的浮點數动猬,就必須用科學計數法表示,把10用e替代表箭,1.23x109就是1.23e9赁咙,或者12.3e8,0.000012可以寫成1.2e-5燃逻,等等序目。
? ? ? 整數和浮點數在計算機內部存儲的方式是不同的,整數運算永遠是精確的(除法難道也是精確的伯襟?是的!)握童,而浮點數運算則可能會有四舍五入的誤差姆怪。
* complex (復數)
? ? ? 復數( (complex numbers))- 復數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示澡绩, 復數的實部a和虛部b都是浮點型稽揭。
? ? ? 這里是數字的一些例子:
數據類型轉換
? ? ? Python中含有混合類型計算表達式內部將數字轉換為普通類型。但有時肥卡,需要從一種類型的顯式強制數到另一個類型溪掀,以滿足操作符或函數參數的要求。
int(X)將x轉換為一個普通的整數步鉴。
long(x)將x轉換為一個長整數揪胃。
float(x)轉換x為一個浮點數。
complex(x)轉換x為復數與實部x和虛部為零氛琢。
complex(x, y) 將x和y轉換成一個復數與實數部分x和虛部y喊递。 x和y是數值表達式
str(x) 將對象x轉換為字符串
repr(x) 將對象x轉換為表達式字符串
eval(str) 用來計算在字符串中的有效Python表達式,并返回一個對象
tuple(s) 將序列s轉換為一個元組
list(s) 將序列s轉換為一個列表
chr(x) 將一個整數轉換為一個字符
unichr(x) 將一個整數轉換為Unicode字符
ord(x) 將一個字符轉換為它的整數值
hex(x) 將一個整數轉換為一個十六進制字符串
oct(x) 將一個整數轉換為一個八進制字符串
數學函數??
abs(x) 返回x的絕對值:x和零之間的(正極)的距離,如abs(-10) 返回 10
ceil(x) x的上限:最小整數不小于x阳似,如 math.ceil(4.1) 返回 5.0
cmp(x, y)?如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x) 返回e的x次冪(ex),如math.exp(1) 返回2.718281828459045
fabs(x)?x的絕對值骚勘,如math.fabs(-10) 返回10.0
floor(x) 返回x的下舍整數,最大的整數不大于x,如math.floor(-4.9)返回 -5.0
log(x) x的自然對數俏讹,對于x> 0時当宴,如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)?以10為底的對數,X>0泽疆,如math.log10(100)返回 2.0
max(x1, x2,...) 返回給定參數的最大值:最接近正無窮大的值户矢。參數可以為序列。
min(x1, x2,...) 返回給定參數的最小值于微,參數可以為序列逗嫡。
modf(x)? 返回x的整數部分與小數部分,兩部分的數值符號與x相同株依,整數部分以浮點型表示驱证。例如, math.modf(math.pi) :? (0.14159265358979312, 3.0)
pow(x, y)?返回x**y 的值
round(x [,n]) 返回浮點數x的四舍五入值恋腕,如給出n值抹锄,則代表舍入到小數點后的位數。例如荠藤,round(-100.000056, 3) :? -100.0伙单;Python遠離零點決定:round(0.5) 是1.0 而round(-0.5) 為-1.0。
sqrt(x) 返回數字x的平方根哈肖,返回類型為實數吻育,如math.sqrt(4)返回 2.0
? 注意:有些函數是無法直接訪問的,所以我們需要導入math模塊淤井,然后需要用math的靜態(tài)對象來調用這個函數布疼。
? ? ? 例如,ceil ( )方法的語法:
import math
math.ceil(x)
隨機函數
? ? ? 用于游戲币狠,模擬游两,測試,安全性和保密性的應用的隨機數漩绵。Python包括常用以下函數:
choice(seq)?從列表贱案,元組或字符串隨機項。seq可能是一個列表止吐,元組或字符串...
? ? ? 此函數是無法直接訪問的宝踪,所以我們需要導入random模塊,然后我們需要使用random對象來調用這個函數祟印。以下是choice()方法的語法:
import random
random.choice (seq)
randrange ([start,] stop [,step]) 從范圍隨機選擇的元素(啟動肴沫,停止,步驟)
? ? ? 例如randrange(100, 1000, 2)表示選擇隨機數使得:100 <= number < 1000蕴忆。 random.randrange(100,1000,3)可能為 520; 而 random.randrange(100, 1000, 2)可能是? 976
random( ) 隨機浮點數r颤芬,使得0<=r <1,例如 random.random( )可能為 0.309090465205
seed([x]) 設置生成隨機數使用整數開始值。調用任何其他隨機模塊函數之前調用這個函數站蝠。此方法不返回任何值汰具。
? ? ? 例如:random.seed(10), Random number with seed 10 :? 0.57140259469即:random.random() (預先調用random.seed(10))是0.57140259469
shuffle(lst) 隨機化代替列表中的項菱魔。返回None留荔。lst可能是一個列表或元組。
? ? ? 例如:list=[20,16,10,5]; random.shuffle(list)澜倦,隨機產生結果[16, 5, 20, 10]
uniform(x, y)? 隨機浮點數r聚蝶,使得x<=r <y
? ? ? 例如,random.uniform(7,14) 隨機結果12.5326369199藻治。
三角函數
degrees(x)從弧度到度角 x 的轉換
radians(x)從角度到弧度角 x 的轉換
sin(x)返回x的弧度的正弦值
cos(x)返回x 弧度的余弦
tan(x)返回x的弧度的正切
acos(x)?返回x的反余弦值碘勉,以弧度形式表示
asin(x)?返回x的反正弦,以弧度形式表示
atan(x)?返回x的反正切值桩卵,以弧度表示形式
atan2(y, x)?返回反正切atan(y / x)验靡,以弧度形式表示
hypot(x, y)?返回歐幾里德范數,sqrt(x*x + y*y)
? ? ? 注意:函數是無法直接訪問的雏节,所以我們需要導入math模塊胜嗓,然后需要用math的靜態(tài)對象來調用這個函數。
數學常數
pi? 數學常數pi? math.pi :3.141592653589793
e ?數學常數e math.e?