• Python学习之edx6001-week4


    今天完成了week4的ps4b部分,代码如下:

    感觉好多重复代码,目前还没想到如何删繁就简,将就看吧。后续继续优化改进。

     1 def playGame(wordList):
     2     """
     3     Allow the user to play an arbitrary number of hands.
     4  
     5     1) Asks the user to input 'n' or 'r' or 'e'.
     6         * If the user inputs 'e', immediately exit the game.
     7         * If the user inputs anything that's not 'n', 'r', or 'e', keep asking them again.
     8 
     9     2) Asks the user to input a 'u' or a 'c'.
    10         * If the user inputs anything that's not 'c' or 'u', keep asking them again.
    11 
    12     3) Switch functionality based on the above choices:
    13         * If the user inputted 'n', play a new (random) hand.
    14         * Else, if the user inputted 'r', play the last hand again.
    15       
    16         * If the user inputted 'u', let the user play the game
    17           with the selected hand, using playHand.
    18         * If the user inputted 'c', let the computer play the 
    19           game with the selected hand, using compPlayHand.
    20 
    21     4) After the computer or user has played the hand, repeat from step 1
    22 
    23     wordList: list (string)
    24     """
    25     hand={}
    26     while True:
    27         tips=input('Enter n to deal a new hand, r to replay the last hand, or e to end game: ')
    28         if tips not in ('n','r','e'):
    29             print('Invalid command.please try again.')
    30         else:
    31             if tips=='e':
    32                 break
    33             elif tips=='r':
    34                 if hand == {}:
    35                     print('You have not played a hand yet. Please play a new hand first!')
    36                 else:
    37                     while True:
    38                         uc = input('Enter u to have yourself play, c to have the computer play:')
    39                         if uc == 'c':
    40                             compPlayHand(hand, wordList, HAND_SIZE)
    41                             break
    42                         elif uc == 'u':
    43                             playHand(hand, wordList, HAND_SIZE)
    44                             break
    45                         else:
    46                             print('Invalid command.')
    47             else:
    48                 hand=dealHand(HAND_SIZE)
    49                 while True:
    50                     uc=input('Enter u to have yourself play, c to have the computer play:')
    51                     if uc=='c':
    52                         compPlayHand(hand,wordList,HAND_SIZE)
    53                         break
    54                     elif uc=='u':
    55                         playHand(hand, wordList, HAND_SIZE)
    56                         break
    57                     else:
    58                         print('Invalid command.')

    以上,就酱紫。

  • 相关阅读:
    linux
    ansible
    语法糖
    jupyter login
    hadoop patch
    ganglia
    unixbench安装使用
    linux使用FIO测试磁盘的iops
    cpu事实负载使用top命令
    phoronix-test-suite测试云服务器
  • 原文地址:https://www.cnblogs.com/frank1126lin/p/8806573.html
Copyright © 2020-2023  润新知