1. 程式人生 > >Python自動化運維開發----基礎(六)列表的應用

Python自動化運維開發----基礎(六)列表的應用

1.列表的應用

(1)佇列

 特點: 先進先出

 使用場景: 銀行排隊,庫存,秒殺,排隊取餐,callcenter

 append() + pop(0)

(2)堆疊

 特點: 先進後出

 使用場景: 出電梯

 append() + pop()

2.案列

eg1:  做一個任務列表,使用佇列方式,先進先出的方式,當用戶輸入do的時候開始做任務並彈出做的任務

注意:使用先進先出的原則 使用 列表的pop函式 每次都是先刪除pop(0)

#!/usr/bin/python
task = []
while True:
    task_name = input("請輸入你要輸入的任務名稱:")
    if task_name == "do":
        if len(task) == 0:
            print("任務為空,退出程式")
            break
        else:
            print(task.pop(0))
    else:
        task.append(task_name)

執行結果

image.png

eg2: 去求兩個列表的交集,並且去重

注:使用了判斷某一個元素是否在列表中的方法

#!/usr/bin/python
num1 = [1,3,5,6,3]
num2 = [3,5,3]
num3 = []
for i in num1:
    if i in num2:
      if i not in num3:
          num3.append(i)
print(num3)

執行結果:

image.png

eg3: 給一個列表做一個排序,讓最大的數字放在最後

注:需要一箇中間變數存大的那個然後在做交換

#!/usr/bin/python
num = [1,6,4,5,10]
i = 0
j = 1
while j < len(num):
    if num[i] > num[j]:
        z = num[i]
        num[i] = num[j]
        num[j] = z
        i += 1
        j += 1
    else:
        z = num[j]
        i += 1
        j += 1
print(num)

執行結果:

image.png