列表-python基礎篇四
列表列由一系列按特定順序排列的元素組成。你可以建立包含字母表中所有字母、數字0~9或所有家庭成員姓名的列表;也可以將任何東西加入列表中,其中的元素之間可以沒有 任何關係。鑑於列表通常包含多個元素,給列表指定一個表示複數的名稱(如letters 、digits 或names )是個不錯的主意。
在Python中,用方括號([] )來表示列表,並用逗號來分隔其中的元素。下面是一個簡單的列表示例,這個列表包含幾種自行車:bicycles = ['trek', 'cannondale', 'redline', 'specialized'] print(bicycles) #結果:['trek', 'cannondale', 'redline', 'specialized']
訪問列表元素
列表是有序集合,因此要訪問列表的任何元素,只需將該元素的位置或索引告訴Python即可。要訪問列表元素,可指出列表的名稱,再指出元素的索引,並將其放在方括號內。在Python中,第一個列表元素的索引為0,而不是1。
例如,下面的程式碼從列表bicycles 中提取第一款自行車:
bicycles = ['trek', 'cannondale', 'redline', 'specialized'] print(bicycles[0]) #結果:trek #如果想要更加乾淨 print(bicycles[0].title())Python為訪問最後一個列表元素提供了一種特殊語法。通過將索引指定為-1 ,可讓Python返回最後一個列表元素:
bicycles = ['trek', 'cannondale', 'redline', 'specialized'] print(bicycles[-1])
修改、新增和刪除元素
1、修改
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) motorcycles[0] = 'ducati' #修改第一個元素後輸出 print(motorcycles) #結果1:['honda', 'yamaha', 'suzuki'] #結果2:['ducati', 'yamaha', 'suzuki']
2、新增
(1)在表末尾新增值,方法append() 將元素新增到了列表末尾,也可以使用append動態的建立表。
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) motorcycles.append('ducati') print(motorcycles) #結果1:['honda', 'yamaha', 'suzuki'] #結果2:['honda', 'yamaha', 'suzuki', 'ducati'] motorcycles = [] #使用append讓動態地建立列表 motorcycles.append('honda') motorcycles.append('yamaha') motorcycles.append('suzuki') print(motorcycles) #結果:['honda', 'yamaha', 'suzuki']
(2)在列表中插入元素。使用方法insert() 可在列表的任何位置新增新元素。為此,你需要指定新元素的索引和值。
motorcycles = ['honda', 'yamaha', 'suzuki'] motorcycles.insert(0, 'ducati') print(motorcycles) #輸出結果:['ducati', 'honda', 'yamaha', 'suzuki']
3、從列表中刪除元素
(1)使用使 del 語句刪除元素,可以通過索引來刪除任意一個元素。
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) del motorcycles[0] print(motorcycles) #輸出結果1:['honda', 'yamaha', 'suzuki'] #輸出結果1:[ 'yamaha', 'suzuki'] motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) del motorcycles[1] print(motorcycles) #輸出結果1:['honda', 'yamaha', 'suzuki'] #輸出結果1:['honda', 'suzuki']
(2)使用方法 使 pop() 刪除元素,方法pop() 可刪除列表末尾的元素,並讓你能夠接著使用它。
motorcycles = ['honda', 'yamaha', 'suzuki'] last_owned = motorcycles.pop() print("The last motorcycle I owned was a " + last_owned.title() + ".") #輸出結果:The last motorcycle I owned was a Suzuki.pop() 也可以刪除列表中任何位置的元素,只需在括號中指定要刪除的元素的索引即可。
motorcycles = ['honda', 'yamaha', 'suzuki'] first_owned = motorcycles.pop(0) print('The first motorcycle I owned was a ' + first_owned.title() + '.')
(3)根據值刪除元素。只知道要刪除的元素的值,而不知道索引,可使用方法remove() 。並且使用remove() 從列表中刪除元素時,也可接著使用它的值。
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] print(motorcycles) motorcycles.remove('ducati') print(motorcycles) #結果1:['honda', 'yamaha', 'suzuki', 'ducati'] #結果2:['honda', 'yamaha', 'suzuki'] motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] print(motorcycles) too_expensive = 'ducati' motorcycles.remove(too_expensive) print(motorcycles) print("\nA " + too_expensive.title() + " is too expensive for me.") ''' ['honda', 'yamaha', 'suzuki', 'ducati'] ['honda', 'yamaha', 'suzuki'] A Ducati is too expensive for me. '''
組織列表
1、使用方法 使 sort() 對列表進行永久性排序。方法sort() 永久性地按字母順序修改了列表元素的排列順序,使用引數“reverse=True”可以按與字母順序相反的順序排列。
cars = ['bmw', 'audi', 'toyota', 'subaru'] cars.sort() print(cars) #['audi', 'bmw', 'subaru', 'toyota'] cars = ['bmw', 'audi', 'toyota', 'subaru'] cars.sort(reverse=True) print(cars) #['toyota', 'subaru', 'bmw', 'audi']
2、使用函式 使 sorted() 對列表進行臨時排序。
cars = ['bmw', 'audi', 'toyota', 'subaru'] print("Here is the original list:") print(cars) print("\nHere is the sorted list:") print(sorted(cars)) print("\nHere is the original list again:") print(cars) """ Here is the original list: ['bmw', 'audi', 'toyota', 'subaru'] Here is the sorted list: ['audi', 'bmw', 'subaru', 'toyota'] Here is the original list again: ['bmw', 'audi', 'toyota', 'subaru'] """
3、要反轉列表元素的排列順序,可使用方法reverse() 。
4、確定列表的長度,使用函式len() 可快速獲悉列表的長度。
>>> cars = ['bmw', 'audi', 'toyota', 'subaru'] >>> len(cars) 4