做網(wǎng)站都需要自己的服務(wù)器嗎熱搜詞排行榜
變量和基本數(shù)據(jù)類型
變量是什么?
變量是存儲(chǔ)在內(nèi)存中的值,這就意味著在創(chuàng)建變量時(shí)會(huì)在內(nèi)存中開辟一個(gè)空間。
基于變量的數(shù)據(jù)類型,解釋器會(huì)分配指定內(nèi)存,并決定什么數(shù)據(jù)可以被存儲(chǔ)在內(nèi)存中。
因此,變量可以指定不同的數(shù)據(jù)類型,這些變量可以存儲(chǔ)整數(shù),小數(shù)或字符。
Python 中的變量賦值不需要類型聲明。
每個(gè)變量在內(nèi)存中創(chuàng)建,都包括變量的標(biāo)識(shí),名稱和數(shù)據(jù)這些信息。
每個(gè)變量在使用前都必須賦值,變量賦值以后該變量才會(huì)被創(chuàng)建。
等號(hào) = 用來(lái)給變量賦值。
等號(hào) = 運(yùn)算符左邊是一個(gè)變量名,等號(hào) = 運(yùn)算符右邊是存儲(chǔ)在變量中的值。
多個(gè)變量賦值
Python允許你同時(shí)為多個(gè)變量賦值。例如:
a = b = c = 1
以上實(shí)例,創(chuàng)建一個(gè)整型對(duì)象,值為1,三個(gè)變量被分配到相同的內(nèi)存空間上。
您也可以為多個(gè)對(duì)象指定多個(gè)變量。例如:
a, b, c = 1, 2, "john"
以上實(shí)例,兩個(gè)整型對(duì)象 1 和 2 分別分配給變量 a 和 b,字符串對(duì)象 “john” 分配給變量 c。
基本數(shù)據(jù)類型
數(shù)字類型
數(shù)字?jǐn)?shù)據(jù)類型用于存儲(chǔ)數(shù)值。
他們是不可改變的數(shù)據(jù)類型,這意味著改變數(shù)字?jǐn)?shù)據(jù)類型會(huì)分配一個(gè)新的對(duì)象。
整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)(complex)
如果使用的是低版本 Python2
,那么還包含長(zhǎng)整型(long)。
基本運(yùn)算
運(yùn)算 | 描述 |
---|---|
x + y | x 和 y 的和 |
x - y | x 和 y 的差 |
x * y | x 和 y 的乘積 |
x / y | x 和 y 的商 |
x // y | x 除以 y,取整除 |
x % y | x 除以 y,取模 |
-x | x 取反 |
+x | x 不變 |
abs(x) | x 的絕對(duì)值 |
int(x) | 將 x 轉(zhuǎn)換為整數(shù) |
float(x) | 將 x 轉(zhuǎn)換為浮點(diǎn)數(shù) |
complex(x, y) | 一個(gè)帶有實(shí)部 x 和虛部 y 的復(fù)數(shù),y 默認(rèn)為 0。 |
divmod(x, y) | (x // y, x % y) |
pow(x, y) | x 的 y 次冪 |
x ** y | x 的 y 次冪 |
數(shù)學(xué)函數(shù)
借助數(shù)學(xué)模塊 math
來(lái)實(shí)現(xiàn)更多的運(yùn)算
import math
math.sqrt(1024)
math
模塊中除了求平方根函數(shù),還有很多可以使用的函數(shù)。如下表所示:
函數(shù) | 描述 |
---|---|
abs(x) | 返回 x 的絕對(duì)值 |
ceil(x) | 返回 x 的上入整數(shù),如:math.ceil(1.1) 返回 2 |
floor(x) | 返回 x 的下舍整數(shù),如:math.floor(1.1) 返回 1 |
exp(x) | 返回 e 的 x 次冪 |
log(x) | 返回以 e 為底 x 的對(duì)數(shù) |
log10(x) | 返回以 10 為底 x 的對(duì)數(shù) |
pow(x, y) | 返回 x 的 y 次冪 |
sqrt(x) | 返回 x 的平方根 |
factorial(x) | 返回 x 的階乘 |
隨機(jī)函數(shù)
random
模塊對(duì)隨機(jī)數(shù)的生成提供了支持
import random
# random(x)
#隨機(jī)生成一個(gè)0到1的實(shí)數(shù)
random.random()
#uniform(x,y)
#隨機(jī)生成一個(gè)x到y(tǒng)范圍內(nèi)的實(shí)數(shù)
random.uniform(1,10)
字符串
字符串是python中的一種數(shù)據(jù)類型,可以通過(guò)單引號(hào) '
、雙引號(hào) "
、三引號(hào) '''
或 """
來(lái)定義
基本操作
訪問(wèn)
s = "python"
# 訪問(wèn)第一個(gè)字符
print(s[0])# 訪問(wèn)范圍內(nèi)字符
# yt
print(s[1:3])#pyt
print(s[:3])#hon
print(s[3:])
單個(gè)字符編碼
python()使用了 ord()
函數(shù)返回單個(gè)字符的編碼,chr()
函數(shù)把編碼轉(zhuǎn)成相應(yīng)字符
s = "A"
print(ord(s)) # 65
print(chr(65)) # A
轉(zhuǎn)義符
之前我們說(shuō)過(guò)可以通過(guò)反斜杠 \
將一行語(yǔ)句分多行顯示,其實(shí)就是 \
來(lái)轉(zhuǎn)義字符
一些常見(jiàn)的轉(zhuǎn)義字符如下表所示:
轉(zhuǎn)義字符 | 描述 |
---|---|
\ | 在行尾使用時(shí),用作續(xù)行符 |
\b | 退格(Backspace) |
\000 | 空 |
\n | 換行 |
\v | 縱向制表符 |
\t | 橫向制表符 |
\r | 回車 |
運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
+ | 連接符 |
* | 重復(fù)輸出 |
[] | 通過(guò)索引獲取字符串中字符 |
[ : ] | 獲取字符串中的一部分 |
in | 字符串中是否包含指定字符 |
not in | 字符串中是否不包含指定字符 |
r/R | 字符串原樣輸出 |
s1 = "hello"
s2 = "python"
print("s1 + s2", s1 + s2) # hellopython
print("s1 * 2", s1 * 2) # hellohello
print(s1[0]) # h
print("h in s1", "h" in s1) True
格式化
當(dāng)我們需要輸出的內(nèi)容中含有變量時(shí),比如:Hello xxx
,xxx
為變量,此時(shí)便需要一種格式化字符串的方式,Python 使用 %
格式化字符串,常用占位符如下表所示:
占位符 | 描述 |
---|---|
%s | 格式化字符串 |
%d | 格式化整數(shù) |
%f | 格式化浮點(diǎn)數(shù) |
我們也可以使用字符串的 format()
方法進(jìn)行格式化
print("{0} {1}".format("hello", "python"))
這種方式是用傳入的參數(shù)依次替換字符串內(nèi)的占位符{0},{1}