Python入門基礎知識(二)

林深深深深時見鹿發表於2020-10-14

提示:文章寫完後,目錄可以自動生成,如何生成可參考右邊的幫助文件


前言

筆者剛開始學習Python。本文主要記錄學習,如有錯漏和不足之處,請大家指正。

一、最基本的內建資料型別

在Python中,最基本的內建資料型別有4種,包括整型、浮點型、布林型和字串型

整型浮點型
整數,如1,2,3小數,如1.1
布林型字串型
真假,True,False字串,如"你好"

其中,浮點數在記憶體中往往按照科學計數法儲存。
例如,3.14=3.14*10^(-2),表示成314E-2或者314e-2

二、運算子的使用

1.基本運算子的介紹

在Python中,可以對整數和浮點數進行運算。當整數和浮點數同時進行運算時,運算結果將會被自動轉換為浮點數。

運算子作用
+加法
-減法
*乘法
/浮點數除法
//整數除法
%取餘數
**
divmod()同時得到商和除數
round()四捨五入

2.基本運算子例項計算

為進一步區分浮點數除法和整數除法,舉例:8/2=4.0,8//2=4

a=8//2
b=8/2
print(a,b)

得到如下結果:

4 4.0

3.增強型賦值運算子

由+、-、*,/、//、**、%和賦值符=組成,主要有以下幾種型別:

運算例項等價
a += 1a = a + 1
a -= 1a = a - 1
a *= 2a = a * 2
a /= 2a = a / 2
a //= 2a = a // 2
a %= 2a = a % 2
a **= 2a = a ** 2

此時,需要注意如運算例項所示,基礎運算子和賦值符=必須要連在一起。

4.比較運算子

符號作用
==比較是否等於
!=比較是否不等於

除此之外,其他運算子還包括:>、<、>=、<=。

5.比較運算子

比較運算子由與、或、非組成,具體如下所示:

符號解釋
x and y
x or y
not x

6.同一運算子

同一運算子包括is和not is。
is和==的區別主要在於:is判斷地址,==判斷值是否相等。
具體而言,在[-5,256]範圍內的整數物件,因Python會進行快取,所以此時值相同的物件在命令列中地址相同。與此同時,在Pycharm中儲存為檔案後[-5,正無窮]的數值相同時地址相同,即is運算後顯示為true

三、進位制和資料型別的轉換

1.轉換進位制

我們常見的數字是10進位制。同樣,我們也可以見到二進位制、八進位制和十六進位制的數字。在Python中,可以通過下述方法實現進位制間的轉換:

進位制實現方法
二進位制0b(B)
八進位制0o(O)
十六進位制0x(X)

具體而言,以將二進位制的101轉換為10進製為例,

ob101

得到結果為5。

2.轉換資料型別

可以運用int()將資料轉換為整型,也可以運用float()將資料轉換為浮點型。利用str()可以將其他資料型別轉換為字串。

int(9.9)=9
int(True)=1
int(“234”)=234

而對於字串來說,只有符合整數格式時才可以使用,否則會進行報錯

四、什麼是字串?

字串或串(String)是由數字、字母、下劃線組成的一串字元,其本質是字元排序。字串是“不可改變”的。

1.如何建立字串?

通過單引號或雙引號建立字串,多行字串用連續三個單引號或雙引號。

b= ‘my_name is"TOM"

也存在空字串,如下所示:

c = ''
len(c)

得到0,即字串長度為0。

2.字串的拼接和複製

字串的拼接可以通過+完成

‘aa’+'bb'==>'aabb'
'aa''bb'==>'aabb'

如下所示,字串被複制了3次

a = 'abc'*3

a='abcabcabc'

3.字元的提取和替換

對於字元的提取,選擇使用[]在字串(序列)裡提取字元,正向搜尋時最左側第一個字元的偏移量為0,反向搜尋時右側第一個字元的偏移量為-1。

進一步舉例a = 'abc'理解,可以得到a[0]='a',a[1]='b'
再次需要重申的是,字串是“不可改變”的,但可以用replace()替換某些中字元,從而建立新的字串物件來實現。

4.字串的切片、分割與合併

字串的切片主要是利用slice操作,快速提取子字串。其標準格式為[起始偏移量start:終止偏移量end:步長step],若不寫則預設步長為1。

c = 'halabjtuwest'
print(c[1:6:1])

在上述例項中,我們最終得到的答案為alabj

字串的分割則依靠split()實現。基於指定分隔符將字串分隔成多個字串,如果不指定分隔符,則預設使用空白字元。

a = "to be or not to be"
a.split('to')

在上述例項中,我們得到['','be or not','','be']

join()用於將一系列子字串合併,和+都能實現拼接。但考慮到+會生成新的物件(列表物件可變,字串物件不可變),因此涉及到效能時,建議使用join()。

5.format的基本用法

利用format可以進行格式化處理,接下來簡單介紹一下format的基本用法。
1. 不帶編號:“{}”
2. 帶數字編號:“{1}",“{2}”
3. 帶關鍵字:“{a}","{tom}"
format格式化當然format還有許多進階的用法,我在這裡就先不寫啦。

相關文章