練習題1.通過函數生成52張撲克牌


練習題要求:

1.寫函數,返回一個撲克牌列表,里面有52項,每一項是一個元組.

  1. 例如:[(‘紅心’,2),(‘草花’,2), …(‘黑桃A’)]

分析步驟:

1.52張牌不包括大小王.我們可以先定義一個臨時空列表,然后把2-10的數字添加進去,再用列表的extend()方法把JQKA也添加到臨時列表中

2.循環獲取撲克牌類型["黑桃", "紅桃", "方塊", "草花"]中的元素,並和臨時列表中的元素進行結合.把結合的結果添加到一個新的空列表card中.

3.return 返回 card. 再調用函數,就獲取了52張牌.

 1 def card():
 2     temp_list = []
 3     card =[]
 4     for i in range(2, 11):
 5         temp_list.append(i)
 6     temp_list.extend(["J", "Q", "K", "A"])
 7     for i in temp_list:
 8         for card_type in ["黑桃", "紅桃", "方塊", "草花"]:
 9             a = (card_type, i)
10             card.append(a)
11     return card
12 
13 
14 res = card()
15 print(res)
代碼內容

 

 

[('黑桃', 2), ('紅桃', 2), ('方塊', 2), ('草花', 2), ('黑桃', 3), ('紅桃', 3), ('方塊', 3), ('草花', 3), 
('黑桃', 4), ('紅桃', 4), ('方塊', 4), ('草花', 4), ('黑桃', 5), ('紅桃', 5), ('方塊', 5), ('草花', 5), 
('黑桃', 6), ('紅桃', 6), ('方塊', 6), ('草花', 6), ('黑桃', 7), ('紅桃', 7), ('方塊', 7), ('草花', 7), 
('黑桃', 8), ('紅桃', 8), ('方塊', 8), ('草花', 8), ('黑桃', 9), ('紅桃', 9), ('方塊', 9), ('草花', 9),
 ('黑桃', 10), ('紅桃', 10), ('方塊', 10), ('草花', 10), ('黑桃', 'J'), ('紅桃', 'J'), ('方塊', 'J'), 
('草花', 'J'), ('黑桃', 'Q'), ('紅桃', 'Q'), ('方塊', 'Q'), ('草花', 'Q'), ('黑桃', 'K'), ('紅桃', 'K'), 
('方塊', 'K'), ('草花', 'K'), ('黑桃', 'A'), ('紅桃', 'A'), ('方塊', 'A'), ('草花', 'A')]
執行結果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM