程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python基礎語法(四)之列表

編輯:Python

Python基礎語法(四)之列表

目錄

3.0 概述

1list.append(obj)在列表末尾添加新的對象2list.count(obj)統計某個元素在列表中出現的次數3list.extend(seq)在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)4list.index(obj)從列表中找出某個值第一個匹配項的索引位置5list.insert(index, obj)將對象插入列表6list.pop([index=-1])移除列表中的一個元素(默認最後一個元素),並且返回該元素的值7list.remove(obj)移除列表中某個值的第一個匹配項8list.reverse()反向列表中元素9list.sort( key=None, reverse=False)對原列表進行排序10list.clear()清空列表11list.copy()復制列表

3.1 切片

  • 索引:

    既有正數索引,也有負數索引,正數以0開始,負數-1為末尾的開始位置

    對於切片來講,遵循左閉右開原則,也就是說 最初索引可以取到,最後的索引則不取

  • 例如如圖所示:

  • 實踐:

    sl
    Out[3]: ['D', 'r', 'e', 'a', 'm']
    sl[0]
    Out[4]: 'D'
    sl[-1]
    Out[5]: 'm'
    sl[-5]
    Out[6]: 'D'
    sl[2:4]#輸出第3到4個字符
    Out[7]: ['e', 'a']
    sl[2:]
    Out[8]: ['e', 'a', 'm']
    sl[-5:]
    Out[9]: ['D', 'r', 'e', 'a', 'm']
    

3.2 列表刪除 (常用 切片)

list = [1,2,3,4,5,6,7,8]
del list[1:3] #list[1:3] = []
#這兩種刪除方法是一樣的,但是如果對單個對象(不用切片)就[]的話,就會
print(list)
[1, 4, 5, 6, 7, 8]
list = [1,2,3,4,5,6,7,8]#如此
list[3] = []
print(list)
[1, 2, [], 4, 5, 6, 7, 8, 9, 10, 11, 12]
list[:2]=[]
[3,4,5,6,7,8]

3.3 列表的切片查詢

  • 查詢

s=[1,991,127,8,9,10,11,12]
s.index(12,0,8)
s.index(12,0,7)

索引遵循左閉右開,不包括 下標8,所以第二行查詢會報錯,如下:

list = [1,2,3,4,5,6,7,8]
print(list[-7:-1:1])
print(list[-1])
print(list[1])
print(list[-1:-9:-1])
print(list[-4:-8:-1])
print(list[4:0:-1])
print(list[4:-8:-1])
[2, 3, 4, 5, 6, 7]
8
2
[8, 7, 6, 5, 4, 3, 2, 1]
[5, 4, 3, 2]
[5, 4, 3, 2]
[5, 4, 3, 2]
  • 列表生成式

    #列表生成式
    print([i*i for i in range(1,10) if 過濾條件])
    # i*i 中的 i 表示列表元素的表達式 
    # for 後的 i 表示自定義變量 , range()表示可迭代對象
    [1, 4, 9, 16, 25, 36, 49, 64, 81]
    
  • 列表支持運算 + *,內部實現了運算符重載

    sl
    Out[10]: ['D', 'r', 'e', 'a', 'm']
    sl*2
    Out[11]: ['D', 'r', 'e', 'a', 'm', 'D', 'r', 'e', 'a', 'm']
    ['M','y']+sl
    Out[14]: ['M', 'y', 'D', 'r', 'e', 'a', 'm']
    

3.4 總結

另外,在以後 如果對Python進行進一步的學習,那麼會遇到Numpy庫,包括許多數據分析,機器學習都會用到該庫,以及一種高級索引范式,在高級索引中支持更多的用法(“奇技淫巧”),等待你的進一步探索!

列表的操作比較簡單,需要注意的就是 對於切片索引的掌控。這一點要著重理解與實踐,可以說列表索引在以後的Python程序中是家常便飯般的存在,學好索引與切片,才能學好列表,為以後Python的學習奠定堅實的基礎。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved