1. 程式人生 > 其它 >零基礎學python 第四章 序列的應用

零基礎學python 第四章 序列的應用

例項1  輸出每日一貼

import datetime
mot = ["今天星期一:\n堅持下去不是因為我很堅強,而是因為我別無選擇。",
       "今天星期二:\n含淚播種的人一定能笑著收穫。",
       "今天星期三:\n做對的事情比把事情做對更重要。",
       "今天星期四:\n命運給予我們的不是失望之酒,而是希望之杯。",
       "今天星期五:\n不要等到明天,明天太遙遠,今天就行動。",
       "今天星期六:\n求知若渴,虛心若愚。",
       "今天星期日:\n成功將屬於那些從不說“不可能”的人。"]
day = datetime.datetime.now().weekday()
print(mot[day])

結果

今天星期四:
命運給予我們的不是失望之酒,而是希望之杯。

例項2  分兩列顯示2017~2018賽季NBA西部聯盟前八名的球隊

print("2017~2018賽季NBA西部聯盟前八名\n")
team = ["火箭","勇士","開拓者","雷霆","爵士","鵜鶘","馬刺","森林狼"]
for index,item in enumerate(team):
    if index%2 == 0:
        print(item + "\t\t",end='')
    else:
        print(item + "\n")

結果

2017~2018賽季NBA西部聯盟前八名

火箭        勇士

開拓者      雷霆

爵士        鵜鶘

馬刺        森林狼

例項3 向NBA名人堂列表中追加2018年進入的球星

#NBA名人堂原有人員
oldlist = ["邁克爾·喬丹","卡里姆·阿布杜爾·賈巴爾","哈基姆·奧拉朱旺","查爾斯·巴克利","姚明"]
newlist = ["賈森·基德","史蒂夫·納什","格蘭特·希爾"]
oldlist.extend(newlist)
print(oldlist)

結果

['邁克爾·喬丹', '卡里姆·阿布杜爾·賈巴爾', '哈基姆·奧拉朱旺', '查爾斯·巴克利', '姚明', '賈森·基德', '史蒂夫·納什', '格蘭特·希爾']

例項4 使用二維列表輸出不同版式的古詩

 
str1 = "
千山鳥飛絕" str2 = "萬徑人蹤滅" str3 = "孤舟蓑笠翁" str4 = "獨釣寒江雪" verse = [list(str1),list(str2),list(str3),list(str4)] print("\n-- 橫版 --\n") for i in range(4): for j in range(5): if j == 4: print(verse[i][j]) else: print(verse[i][j],end ="") verse.reverse() print("\n-- 豎版 --\n") for i in range(5): for j in range(4): if j == 3: print(verse[j][i]) else: print(verse[j][i],end ="")

結果

-- 橫版 --

千山鳥飛絕
萬徑人蹤滅
孤舟蓑笠翁
獨釣寒江雪

-- 豎版 --

獨孤萬千
釣舟徑山
寒蓑人鳥
江笠蹤飛
雪翁滅絕

例項5 使用元組儲存咖啡館裡提供的咖啡名稱

coffeename = ('藍山','卡布奇諾','曼特寧','摩卡','麝香貓','哥倫比亞')
print(coffeename)
 

結果

('藍山', '卡布奇諾', '曼特寧', '摩卡', '麝香貓', '哥倫比亞')

例項6 使用for迴圈列出咖啡館裡的咖啡名稱

coffeename = ('藍山','卡布奇諾','曼特寧','摩卡','麝香貓','哥倫比亞')
print("您好,歡迎光臨~伊米咖啡館~\n\n我店有:\n")
for name in coffeename:
    print(name + "咖啡",end = " ")

  結果

您好,歡迎光臨~伊米咖啡館~

我店有:

藍山咖啡 卡布奇諾咖啡 曼特寧咖啡 摩卡咖啡 麝香貓咖啡 哥倫比亞咖啡 

例項7 分兩列顯示2017~2018賽季NBA西部聯盟前八名球隊

 
print("2017~2018賽季NBA西部聯盟前八名\n")
team=("火箭","勇士","開拓者","雷霆","爵士","鵜鶘","馬刺","森林狼")
for index,item in enumerate(team):
    if index%2 == 0:
        print(item + "\t\t",end = '')
    else:
        print(item+"\n")

結果

2017~2018賽季NBA西部聯盟前八名

火箭        勇士

開拓者       雷霆

爵士        鵜鶘

馬刺        森林狼

例項8 將麝香貓咖啡替換為拿鐵咖啡

coffeename = ('藍山','卡布奇諾','曼特寧','摩卡','麝香貓','哥倫比亞')
coffeename = ('藍山','卡布奇諾','曼特寧','摩卡','拿鐵','哥倫比亞')
print("新元組",coffeename)

結果

新元組 ('藍山', '卡布奇諾', '曼特寧', '摩卡', '拿鐵', '哥倫比亞')

例項9 建立一個儲存女神星座的字典

name = ['綺夢','冷伊一','香凝','黛蘭']
sign = ['水瓶座','射手座','雙魚座','雙子座']
dictionary = dict(zip(name,sign))
print(dictionary)

結果

{'綺夢': '水瓶座', '冷伊一': '射手座', '香凝': '雙魚座', '黛蘭': '雙子座'}

例項10 根據星座測試性格特點

name = ['綺夢','冷伊一','香凝','黛蘭']
sign_person = ['水瓶座','射手座','雙魚座','雙子座']
person_dict = dict(zip(name,sign_person))
sign_all = ['白羊座','金牛座','雙子座','巨蟹座','獅子座','處女座','天秤座','天蠍座','射手座','摩羯座','水瓶座','雙魚座']
nature = ['有一種讓人看見就覺得開心的感覺,陽光、樂觀、堅強,性格直來直去,就是有點小脾氣。',
          '很保守,喜歡穩定,一點有什麼變動就會覺得心裡不踏實,性格比較慢熱,是個理財高手。',
          '喜歡追求新鮮感,有點小聰明,耐心不夠,因你的可愛性格會讓很多人喜歡跟你做朋友。',
          '情緒容易敏感,缺乏安全感,做事情有堅持到底的毅力,為人重情重義,對家人和朋友特別忠實。',
          '有著遠大的理想,總想靠自己的努力成為人上人,總是期待被仰慕被崇拜的感覺。',
          '堅持追求自己的完美主義。',
          '追求平等、和諧,交際能力強,因此朋友多。最大的缺點就是面對選擇總是猶豫不決。',
          '精力旺盛,佔有慾強,對於生活很有目標,不達目的誓不擺休,復仇心重。',
          '崇尚自由,勇敢、果斷、獨立,身上有一股勇往直前的勁兒,只要想做,就能做。',
          '是最有耐心的,做事最小心。做事腳踏實地,比較固執,不達目的不罷休,而且非常勤奮。',
          '人很聰明,最大的特點是創新,追求獨一無二的生活,個人主義色彩很濃厚的星座。',
          '集所有星座的優缺點於一身,最大的優點是有一顆善良的心,願意幫助別人。']
sign_dict = dict(zip(sign_all,nature))
print("【香凝】的星座是",person_dict.get("香凝"))
print("\n 她的性格特點是:\n\n",sign_dict.get(person_dict.get("香凝")))

結果

【香凝】的星座是 雙魚座

 她的性格特點是:

 集所有星座的優缺點於一身,最大的優點是有一顆善良的心,願意幫助別人。

例項11 應用字典推導式實現根據名字和星座建立一個字典

name = ['綺夢','冷伊一','香凝','黛蘭']
sign = ['水瓶','射手','雙魚','雙子']
dictionary ={i:j +'' for i,j in zip(name,sign)}
print(dictionary)

結果

{'綺夢': '水瓶座', '冷伊一': '射手座', '香凝': '雙魚座', '黛蘭': '雙子座'}

例項12 建立儲存學生選課資訊的集合

python = {'綺夢','冷伊一','香凝','梓軒'}
c = {'冷伊一','零語','梓軒','聖博'}
print("選擇python語言的學生有:",python,'\n')
print("選擇C語言的學生有:",c)

結果

選擇python語言的學生有: {'綺夢', '冷伊一', '梓軒', '香凝'} 

選擇C語言的學生有: {'聖博', '冷伊一', '零語', '梓軒'}

例項13 學生更改選學課程

 
python = set(['綺夢','冷伊一','香凝','梓軒'])
python.add('零語')
c = set(['冷伊一','零語','梓軒','聖博'])
c.remove('零語')
print("選擇python語言的學生有:",python,'\n')
print("選擇C語言的學生有:",c)

結果

選擇python語言的學生有: {'梓軒', '零語', '冷伊一', '綺夢', '香凝'} 

選擇C語言的學生有: {'聖博', '梓軒', '冷伊一'}

例項14 對選課集合進行交集、並集和差集運算

python = set(['綺夢','冷伊一','香凝','梓軒'])
c = set(['冷伊一','零語','梓軒','聖博'])
print("選擇python語言的學生有:",python)
print("選擇C語言的學生有:",c)
print("交集運算",python & c)
print("並集運算",python | c)
print("差集運算",python  - c)

結果

選擇python語言的學生有: {'梓軒', '香凝', '冷伊一', '綺夢'}
選擇C語言的學生有: {'梓軒', '零語', '聖博', '冷伊一'}
交集運算 {'梓軒', '冷伊一'}
並集運算 {'零語', '梓軒', '聖博', '冷伊一', '綺夢', '香凝'}
差集運算 {'香凝', '綺夢'}

實戰一 輸出“王者榮耀”的遊戲角色

print("“王者榮耀“遊戲角色:")
print("====坦克:====")
a = ["蘇烈","劉邦","鍾馗","張飛","牛魔","程咬金","白起","劉禪","莊周","項羽","廉頗","巨靈神","安祿山","豬八戒"]
for i in a:
    print(i,end=" ")
print("\n"+"====戰士:====")
b = ["狂鐵","裴擒虎","","孫悟空","哪吒","楊戩","橘右京","亞瑟","雅典娜","夏侯惇","關羽","呂布","韓信","老夫子","達摩",
           "典韋","曹操","鍾無豔","墨子","趙雲","刑天","龍且"]
for i in b:
    print(i,end=" ")
print("\n"+"====刺客:====")
c = ["百里玄策","龐統","花木蘭","阿珂(荊軻)","不知火舞","李白","娜可露露","蘭陵王","韓信","宮本武藏","蓋聶","紅拂"]
for i in c:
    print(i,end=" ")
print("\n"+"====法師:====")
d = ["楊玉環","奕星","女媧","周瑜","鬼谷子","羋月","東皇太一","大喬","諸葛亮","貂蟬","張良","安琪拉"]
for i in d:
    print(i,end=" ")
print("\n"+"====射手:====")
e = ["公孫離","百里守約","后羿","劉備","黃忠","馬可波羅","成吉思汗","虞姬","李元芳","艾琳","狄仁傑","魯班七號","孫尚香"]
for i in e:
    print(i,end=" ")
print("\n"+"====輔助:====")
f = ["明世隱","夢奇","孫臏","太乙真人","蔡文姬"]
for i in f:
    print(i,end=" ")

結果

“王者榮耀“遊戲角色:
====坦克:====
蘇烈 劉邦 鍾馗 張飛 牛魔 程咬金 白起 劉禪 莊周 項羽 廉頗 巨靈神 安祿山 豬八戒 
====戰士:====
狂鐵 裴擒虎 鎧 孫悟空 哪吒 楊戩 橘右京 亞瑟 雅典娜 夏侯惇 關羽 呂布 韓信 老夫子 達摩 典韋 曹操 鍾無豔 墨子 趙雲 刑天 龍且 
====刺客:====
百里玄策 龐統 花木蘭 阿珂(荊軻) 不知火舞 李白 娜可露露 蘭陵王 韓信 宮本武藏 蓋聶 紅拂 
====法師:====
楊玉環 奕星 女媧 周瑜 鬼谷子 羋月 東皇太一 大喬 諸葛亮 貂蟬 張良 安琪拉 
====射手:====
公孫離 百里守約 后羿 劉備 黃忠 馬可波羅 成吉思汗 虞姬 李元芳 艾琳 狄仁傑 魯班七號 孫尚香 
====輔助:====
明世隱 夢奇 孫臏 太乙真人 蔡文姬

實戰二 模擬火車訂票系統

information = ["車次", " ", "出發站-到達站", " ", "出發時間", " ", "到達時間"," ","歷時"]
train_number = ["T40","T298","Z158","Z62"]
chufa_daoda = ["長春-北京","長春-北京","長春-北京","長春-北京"]
start_time = ["00:12","00:06","12:48","21:58"]
arrival_time = ["12:20","10:50","21:06","08:18"]
time = ["12:08","10:44","08:18","8:20"]
for i in information:
    print(i,end="")     
print("")
print(train_number[0],' ',chufa_daoda[0],' ',start_time[0],' ',arrival_time[0],' ',time[0],' ')
print(train_number[1],' ',chufa_daoda[1],' ',start_time[1],' ',arrival_time[1],' ',time[2],' ')
print(train_number[2],' ',chufa_daoda[2],' ',start_time[2],' ',arrival_time[2],' ',time[2],' ')
print(train_number[3],' ',chufa_daoda[3],' ',start_time[3],' ',arrival_time[3],' ',time[3],' ')
chufa_chx = dict(zip(train_number,chufa_daoda))
start_time_chx = dict(zip(train_number,start_time))
arrival_time_chx = dict(zip(train_number,arrival_time))
lishi_chx = dict(zip(train_number,time))
train = input("請輸入購買車次:")
passenger = input("請輸入乘車人(用逗號分隔):")
achufa = chufa_chx[train]
print("你已購買" + train + "次列車" + achufa + "開,請" + passenger + "儘快換取紙質車票。【鐵路客服】")

結果

車次 出發站-到達站 出發時間 到達時間 歷時
T40   長春-北京   00:12   12:20   12:08  
T298   長春-北京   00:06   10:50   08:18  
Z158   長春-北京   12:48   21:06   08:18  
Z62   長春-北京   21:58   08:18   8:20  
請輸入購買車次:Z158
請輸入乘車人(用逗號分隔):李雷,韓梅梅
你已購買Z158次列車長春-北京開,請李雷,韓梅梅儘快換取紙質車票。【鐵路客服】

實戰三 電視劇的收視率排行榜

TV = [("《Give up, hold on to me》收視率:","1.4%"),
       ("《The private dishes of the husbands》收視率:","1.343%"),
       ("《My father-in-law will do martiaiarts》收視率:","0.92%"),
       ("《North Canton still believe in love》收視率:","0.862%"),
       ("《Impossible task》收視率:","0.553%"),
       ("《Sparrow》收視率:","0.411%"),
       ("《East of dream Avenue》收視率:","0.164%"),
       ("《The prodigal son of the new frontier town》收視率:","0.259%"),
       ("《Distant distance》收視率:","0.394%"),
       ("《Music legend》收視率:","0.562%")]
TV.sort(key=lambda x:x[1], reverse=True)
for item in TV:
    print(item[0] + str(item[1]))

結果

《Give up, hold on to me》收視率:1.4%
《The private dishes of the husbands》收視率:1.343%
《My father-in-law will do martiaiarts》收視率:0.92%
《North Canton still believe in love》收視率:0.862%
《Music legend》收視率:0.562%
《Impossible task》收視率:0.553%
《Sparrow》收視率:0.411%
《Distant distance》收視率:0.394%
《The prodigal son of the new frontier town》收視率:0.259%
《East of dream Avenue》收視率:0.164%

實戰四 定製自己的手機套餐

 
rint("定製自己的手機套餐:")
call = ["0分鐘", "50分鐘", "100分鐘", "300分鐘", "不限量"]
flow = ["0M", "500M", "1G", "5G", "不限量"]
message = ["0條", "50條", "100條"]
print("A.請設定通話時長:")
for i,j in enumerate(call):
    print(str(i+1) + '.' + j)
A = int(input("輸入選擇的通話時長編號:"))
print("B.請設定流量包:")
for i,j in enumerate(flow):
    print(str(i+1) + '.' + j)
B = int(input("輸入選擇的流量包編號:"))
print("C.請設定簡訊條數:")
for i,j in enumerate(message):
    print(str(i+1) + '.' + j)
C = int(input("輸入選擇的簡訊條數編號:"))
print("您的手機套餐定製成功:"+ "免費通話時長為" + call[A-1] +
      "/月,"+ "流量為" + flow[B-1] + "/月,"+
      "簡訊條數" + message[C-1] + "/月")

結果

定製自己的手機套餐:
A.請設定通話時長:
1.0分鐘
2.50分鐘
3.100分鐘
4.300分鐘
5.不限量
輸入選擇的通話時長編號:3
B.請設定流量包:
1.0M
2.500M
3.1G
4.5G
5.不限量
輸入選擇的流量包編號:4
C.請設定簡訊條數:
1.0條
2.50條
3.100條
輸入選擇的簡訊條數編號:1
您的手機套餐定製成功:免費通話時長為100分鐘/月,流量為5G/月,簡訊條數0條/月