python學習手冊(第4版) 第七章

2021-08-21 03:57:49 字數 2830 閱讀 4777

回顧第六章,是關於動態型別的介紹,寫到了關於變數的賦值,其實是資料物件的初始化,而且是一種引用(以記憶體中指標的形式實現),改變賦值就是改變引用的物件。涉及到可變變數列表的使用,是對引用的拷貝或值得拷貝(深copy.deepcopy())。最後講到,動態型別是多型的根本。

第七章,字串--乙個有序的字元的集合(集合是無序的、不可變的)

字串的一些基本屬性和方法:

>>>a = 'abc'

>>>b = '123'

>>>c = '  a b  c   ' 

>>>a[1:2]      #字串切片,從索引1開始,截至到索引2,包括索引1,不包括索引2

'b'>>>a[3:0:-2]       #字串切片,步進為負數時,倒序輸出相應的步進結果,注意:倒序時切片的前兩個值也要顛倒過來

'ca'

>>>a[slice(3,0,-2)]            #與上一句效果一樣

'ca'

>>>'str is %s'%a       #字串格式化輸出

'str is abc'

>>>'str is '.format(a,b)         #也是字串格式化,可以處理多個字串物件,使用format()索引的方式

'str is 123'

>>>'str is '.format(name='aaa')      #使用format()的鍵值方式

'str is aaa'

>>>'=='.format(abcd,123.1)         #使用format()索引的方式,分別以10的字元寬度實現右對齊和左對齊

'      abcd==123.1     '

>>>''.format(3.14159)         #使用format()索引的方式,使用e科學計數法對資料進行格式化

'3.141590e+00'

>>>'f}'.format(1/3.0,4)          #使用format()索引的方式,巢狀式的格式化

'0.3333'

>>>'%.*f'%(4,1/3.0)             #與上一句效果相同

'0.3333'

>>>format(1/3.0,'.4f')          #使用format()函式,與上一句效果相同

>>>a.find('a',0,3)          #返回'a'在字串a中的第乙個匹配的位置的索引,其中0,3將字串切片後再查詢,不傳入0,3,則表示查詢整個字串。返回-1,表示未查找到。

>>>c.rstrip()           #清除字串尾部的空格後返回字串

'   a b  c'

>>>a.replace('ab','12')          #替換

'12c'

>>>a.split('b')        #用佔位符分割,返回分割後的列表

['a','c']

>>>','.join(a)          #插入分隔符,返回乙個字串

'a,b,c'

>>>b.isdigit()             #判斷字串內容是否未數字,是則返回true

true

>>>a.upper()             #返回所有字母大寫的字串

'abc'

>>>a.upper().lower()       #將所有大寫字母轉化為小寫並返回

'abc'

>>>a.endswith('bc')       #判斷字串是否以'bc'結尾,是則返回true

true

>>>'b' in a         #判斷'b'是否在字串中,是則返回true

true

>>>a.encode('utf-8')        #轉換編碼,返回轉換後的位元組(bytes)字串,編碼規範為utf-8

b'abc'

>>>type(a.encode('utf-8')

使用'\'進行字串轉義

抑制字串轉義,有兩種方法:使用雙斜槓'\\',或者使用raw字串

>>>s = 'a\\0b\\01c'

>>>s

'a\\0b\\01c'

>>>s = r'a\0b\01c'

'a\\0b\\01c'

>>>ord('1')             #將單個字串轉化為相應的ascii碼

>>>chr(49)          #將ascii碼轉化為相應的字元

'1'屬性讀取:

具有object.attribute的表示式意味著「讀取object物件的attribute屬性的值」

函式呼叫表示式:

具有函式(引數)的表示式意味著「呼叫函式,傳入零個或多個用逗號隔開的引數,並得到函式的返回值」

字串格式化:

>>> 'abc%06d'%1    #%06d,格式化整數,位數多則全部加入,位數少則補0

'abc000001'

>>> '%e'%1             # %e  格式化為科學計數法

'1.000000e+00'

基於字典的格式化

>>>'%(a)d,%(b)s'%

3,one

內建函式vars()

>>>vars()           #返回乙個字典,內容為當前狀態下所有的變數即其值

Python學習手冊 第4版 學習筆記

python學習手冊 第4版 是學習python比較好的教程。具體教程網上去搜,很多!由於看的比較快,很多知識記得不是很牢。記筆記如下,便於一會按內容翻看。頁碼是pdf檔案的頁碼,不是書的頁號 p143 檔案讀寫 p147 使用者定義的類 p201 字串 p213 字串的步進和反轉 p227字串格式...

Python學習手冊 第4版 第04天

數字 複數有理分數 想起了初中,有沒有 無窮的整數精度 2 8 16進製制 0b001 0o12 0x222 oct bin hex可以對數字進行轉換,對比c 來說太簡單明瞭了 as integer radion is integer lambda表示式,我在使用c 11時,盡量不使用它,現在。x ...

Python學習手冊 第4版 第06 07天

py第六7天,工作有點小忙,看到字串部分了,想一口氣看完再總結下 對於 int a 3 c a 3 py 完全不一樣,c 是宣告乙個變數,內容是3,而py是建立乙個物件3,宣告乙個變數a 引用 物件3,py的說法 引用是自動形成的從變數到物件的指標,py提到指標適合嗎,書的作者也是c 出身,哈哈 p...