(完整學習過程屏幕記錄視頻地址在文末,手寫筆記在文末)python
粗俗地區分列表,能夠這樣理解,定義或print列表後顯示時,列表中的各元素都是用一個方括號[]括起來的。shell
即列表看起來老是這樣的:編程
lstA=[1,3,5,7,9]網絡
lstB=[‘我’,’愛’,’祖’,’國’]app
同其它序列同樣,要訪問列表的元素,直接引用元素在序列中的index值便可編程語言
lstA[0] 值是:1ide
lstB[-1] 值是:‘國’函數
1、將其它序列強制轉換成列表學習
新獲得的列表對象 = list(其它序列對象)測試
如:
>>> strTemp='孤荷凌寒'
>>> lstTemp=list(strTemp) #將字符串強制轉換成列表
>>> print(lstTemp)
['孤', '荷', '凌', '寒']
2、其它序列如:元組、字符串等,都是不能直接改變序列中元素的內容的,包括修改元素值、增長新元素、刪除元素、分片賦值等操做。
而列表是容許進行內容修改的序列。
3、列表元素的從新賦值
如:
>>> strTemp='孤荷凌寒'
>>> lstTemp=list(strTemp) #將字符串強制轉換成列表
>>> print(lstTemp)
['孤', '荷', '凌', '寒']
>>> lstTemp[0]='大' #對列表的index值爲0的元素從新賦值
>>> print(lstTemp)
['大', '荷', '凌', '寒'] #列表中指定元素的值被修改了
4、向列表中添加元素
使用append方法
如:
>>> strTemp='孤荷凌寒'
>>> lstTemp=list(strTemp) #將字符串強制轉換成列表
>>> print(lstTemp)
['孤', '荷', '凌', '寒']
>>> lstTemp[0]='大' #對列表的index值爲0的元素從新賦值
>>> print(lstTemp)
['大', '荷', '凌', '寒'] #列表中指定元素的值被修改了
>>> lstTemp.append('帥') #向列表的最後添加一個元素’帥’
>>> print(lstTemp)
['大', '荷', '凌', '寒', '帥']
5、刪除元素
使用全局del函數
>>> del lstTemp[0] #刪除列表index值爲0的元素
>>> print(lstTemp)
['荷', '凌', '寒', '帥']
6、分片賦值
分片賦值是指先取出列表中指定的切片斷,而後直接經過=進行賦值,=的右邊是值組成的列表,此列表的元素個數能夠不與切片斷中的元素個數相同。
>>> print(lstTemp)
['荷', '凌', '寒', '帥']
>>> lstTemp[3:]=list('很是帥') # lstTemp[3:]這個分片(切片)中只有一個元素,值爲‘帥’,=號右邊卻賦值了一個三個元素的列表。
>>> print(lstTemp)
['荷', '凌', '寒', '非', '常', '帥']
7、向列表中指定位置插入元素
操做與分片賦值同樣,只是在分片(切片)時,指定的起始和結束index值是同樣的,如:lstTemp(1:1) lstTemp(2:2)
表示 在此index值的元素以前的位置插入若干個新元素。
>>> print(lstTemp)
['荷', '凌', '寒', '非', '常', '帥']
>>> lstTemp[0:0]='孤' #插入元素’孤’到index值爲0的元素以前的位置
>>> print(lstTemp)
['孤', '荷', '凌', '寒', '非', '常', '帥']
8、經過分片賦值方式刪除一個區段切片中的多個元素
這與第六點分片賦值徹底同樣,只是在賦值式的=號右邊是一個空列表。
>>> print(lstTemp)
['孤', '荷', '凌', '寒', '非', '常', '帥']
>>> lstTemp[4:7]=[] #=右邊賦值的是一個空列表,就等同於刪除了切片部分的元素
>>> print(lstTemp)
['孤', '荷', '凌', '寒']
9、書寫序列的分片代碼時,最容易犯的錯誤是,將分隔起止index值的符號 : 寫成 , 號。
這是從其它編程語言轉變過來形成的不適應。
若是分隔符號使用錯誤,會提示以下錯誤:
>>> lstTemp[4,7]=[] #正確的寫法是:lstTemp[4:7]=[]
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
lstTemp[4,7]=[]
TypeError: list indices must be integers or slices, not tuple
——————————
今天整理的學習筆記完成,最後例行說明下個人自學思路:
根據過去多年我自學各類編程語言的經歷,認爲只有真正體驗式,解決實際問題式的學習纔會有真正的效果,即讓學習實際發生。在2004年的時候我開始在一個鄉村小學自學電腦 並學習vb6編程語言,沒有學習同伴,也沒有高師在上,甚至電腦都是孤島(鄉村那時尚未網絡),有的只是一本舊書,在痛苦的自學摸索中,我找到適應本身零基礎的學習方法:首先是每讀書的一小節就做相應的手寫筆記,第二步就是上機測試每個筆記內容是否實現,其中會發現書中講的其實有出入或錯誤,第三步就是在上機測試以後,將筆記改成電子版,造成最終的修訂好的正確無誤的學習筆記 。
經過反覆嘗試錯誤,在那個沒有分享與交流的黑暗時期我摸黑學會了VB6,爾後接觸了其它語言,也曾聽過付費視頻課程,結果發現也許本身學歷果真過低,就算是零基礎的入門課程,其實也難以跟上進度,講師的教學多數出現對初學者的實際狀況並不瞭解的狀況,何況學習者的個體也存在差別呢?固然更可怕的是收費課程的價格每每是本身難以承受的。
因而個人全部編程學習都改成了自學,繼續本身的三步學習筆記法的學習之路。
固然自學的最大問題是會走那麼多的彎路,沒有導師直接輸入式的教學來得直接,好在網絡給咱們帶來無限搜索的機會,你們在網絡上的學習日誌帶給咱們共享交流的機會,而QQ羣等交流平臺、網絡社區的成立,咱們能夠一塊兒自學,互相批評交流,也能夠得到更有效,更自主的自學成果。
因而我以人生已過半的年齡,決定繼續個人編程自學之路,開始學習python,只但願與你們共同交流,一我的的獨行是可怕的,只有一羣人的共同前進纔是有但願的。
誠摯期待您的交流分享批評指點!歡迎聯繫我加入從零開始的自學聯盟。
這個時代互聯網成爲了一種基礎設施的存在,因而原本在孤獨學習之路上的咱們變得再也不孤獨,由於網絡就是一個新的客廳,咱們時刻均可以進行沙龍活動。
很是樂意能與你們一塊兒交流本身自學心得和發現,更但願你們可以對我學習過程當中的錯誤給予指點——是的,這樣我就能有許多免費的高師了——這也是分享時代,社區時代帶來的好福利,我相信你們會的,是吧!
根據徹底共享的精神,開源互助的理念,個人我的自學錄製過程是所有按4K高清視頻錄製的,從手寫筆記到驗證手寫筆記的上機操做過程全程錄製,但由於4K高清文件太大均超過5G以上,因此沒法上傳至網絡,若有須要可聯繫我QQ578652607對傳,樂意分享。上傳分享到百度網盤的只是壓縮後的720P的視頻。
個人學習過程錄像百度盤地址分享以下:(清晰度:1280x720)
連接:https://pan.baidu.com/s/1ixQacJu3Bv1-7B9qWJOENA 密碼:ypgv
Bilibili:
https://www.bilibili.com/video/av35777463/
喜馬拉雅:
https://www.ximalaya.com/keji/19103006/136107906