1. 程式人生 > >Python練習【2】

Python練習【2】

Python練習

題目1:

  • 用Python實現佇列(先入先出)
  • 入隊
  • 出隊
  • 隊頭
  • 隊尾
  • 佇列是否為空
  • 顯示佇列元素

  • 程式碼:

    list=[]                    ##定義空列表用於儲存資料
    tip = """
    ******佇列******
    1.入隊
    2.出隊
    3.隊頭
    4.隊尾
    5.佇列是否為空
    6.顯示佇列元素
    (輸入q退出)
    """                         ##定義登入介面
    while 1:
    print(tip)               ##列印登入介面
    choice = input('')  ##輸入變數儲存
    if choice == '1':    ##如果輸入字串為1
    item = input('請輸入入隊元素:')   ##輸入字串儲存入item變數
    list.append(item)   ##將item新增入列表
    print('%s入隊成功'%(item))    ##輸入提示入隊成功
    elif choice == '2':    ##如果輸入字串為2
    if not list:   ##如果list為空
    print('隊為空,無法出隊')  ##輸出提示,無法出隊
    else:          ##如果list不為空
    print('%s出隊成功'%list.pop())    ##pop彈出元素,並提示出隊成功
    elif choice == '3':    ##如果輸入字串為3
    if not list:   ##如果list為空
    print('隊為空,無隊首元素')    ##提示隊空
    else:          ##如果list不為空
    print('隊首元素:%s'%list[0])  ##輸出隊首元素
    elif choice == '4':    ##如果輸入字串為4
    if not list:   ##如果list為空
    print('隊為空,無隊尾元素')    ##提示隊空
    else:          ##如果list不為空
    print('隊尾元素:%s' % list[-1])    ##輸出隊尾元素
    elif choice == '5':    ##如果輸入字串為5
    if not list:   ##如果list為空
    print('佇列為空')      ##提示佇列為空
    else:          ##如果list不為空
    print('佇列不為空')  ##提示佇列不為空
    elif choice == '6':    ##如果輸入字串為6
    if not list:   ##如果list為空
    print('佇列為空')      ##提示佇列為空
    else:          ##如果list不為空
    print('佇列元素如下:\n'+' '.join(list))  ##將全部元素用空格拼接並輸出
    elif choice == 'q':    ##如果輸入字串為q
    print('*****歡迎下次使用*****')   ##輸出退出提示
    break   ##跳出迴圈,退出程式
    else:    ##輸出錯誤字元
    print('請輸入正確的操作符:')  ##輸出提示文字

  • 測試結果:

    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】
    Python練習【2】


題目2:

  • 重複的單詞:單詞之間以空格為分隔符
  • 輸入:使用者輸入一句英文句子
  • 輸出:打印出每個單詞和其重複的次數

程式碼:

str=input('請輸入需判斷的句子:').split(' ')   ##提示並將輸入字串按空格分割,並返回列表
set_str=set(str)  ##將接收到的陣列轉換成集合,利用集合元素的唯一性進行遍歷
for i in set_str:  ##遍歷集合中的元素
print(i,' ',str.count(i))   ##輸出對應的元素和出現次數

測試結果:

Python練習【2】


題目3:

  • 重複統計:
  • 隨機生成1000個整數:
  • 數字的範圍【20,100】
  • 升序輸出所有不同的數字及其每個數字重複的次數

程式碼:

import random    ##包含random庫
list_rand=[]         ##定義空列表來儲存生成的數
for i in range(1000):    ##迴圈1000次
list_rand.append(random.randint(20, 100))    ##將迴圈新增的數存入列表
for i in set(list_rand):   ##列表轉換集合,遍歷其中的元素
print(i,list_rand.count(i))   ##輸出元素和次數

測試結果:

Python練習【2】