【发布时间】:2017-10-13 20:15:36
【问题描述】:
我正在用 python 编写一个玩战争游戏的程序。我想知道是否有办法将所有 if 语句压缩为更简单的代码。我需要从 1-13 中选择一个随机数,这些数字与一副牌中的一张牌有关。 1=王牌,2=2 ... 11=杰克,12=皇后,13=国王。我还没有学习任何功能,所以我不能使用其中任何一个。
while player_picked == computer_picked:
player_picked = random.randint(1,13)
computer_picked = random.randint(1,13)
if player_picked == 1:
card_picked_player = "Ace"
if player_picked == 2:
card_picked_player = "Two"
if player_picked == 3:
card_picked_player = "Three"
if player_picked == 4:
card_picked_player = "Four"
if player_picked == 5:
card_picked_player = "Five"
if player_picked == 6:
card_picked_player = "Six"
if player_picked == 7:
card_picked_player = "Seven"
if player_picked == 8:
card_picked_player = "Eight"
if player_picked == 9:
card_picked_player = "Nine"
if player_picked == 10:
card_picked_player = "Ten"
if player_picked == 11:
card_picked_player = "Jack"
if player_picked == 12:
card_picked_player = "Queen"
if player_picked == 13:
card_picked_player = "King"
if computer_picked == 1:
card_picked_computer = "Ace"
if computer_picked == 2:
card_picked_computer = "Two"
if computer_picked == 3:
card_picked_computer = "Three"
if computer_picked == 4:
card_picked_computer = "Four"
if computer_picked == 5:
card_picked_computer = "Five"
if computer_picked == 6:
card_picked_computer = "Six"
if computer_picked == 7:
card_picked_computer = "Seven"
if computer_picked == 8:
card_picked_computer = "Eight"
if computer_picked == 9:
card_picked_computer = "Nine"
if computer_picked == 10:
card_picked_computer = "Ten"
if computer_picked == 11:
card_picked_computer = "Jack"
if computer_picked == 12:
card_picked_computer = "Queen"
if computer_picked == 13:
card_picked_computer = "King"
【问题讨论】:
-
使用字典或列表...
{1:'Ace',2:'Two',...}或['Ace','Two',...]
标签: python if-statement