1. 程式人生 > 其它 >列表-python基礎篇四

列表-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