当前位置: 首页 > 编程笔记 >

Python编程中的Hangman游戏

吕学
2023-03-14
本文向大家介绍Python编程中的Hangman游戏,包括了Python编程中的Hangman游戏的使用技巧和注意事项,需要的朋友参考一下

man子手是计算机上的著名游戏,它基本上将计算机生成的单词与您猜到的单词匹配。如果有比赛,您会得到奖励,否则游戏会继续要求新的输入。

在下面的游戏中,用户首先必须输入他们的姓名,然后要求其猜测任何字母。如果随机单词包含该字母,它将以正确的位置显示为输出,否则程序将要求您猜测另一个字母。用户将获得几轮可以更改的轮数,以猜测完整的单词。在the子手游戏中,用户必须猜测正确的单词才能挽救生命。

我们使用随机模块以及许多特殊字符在响应后绘制图表。当响应未能获得正确答案时,可以使该图看起来像人悬在空中。但是总的来说,这是一个猜谜游戏。

示例

import random
class game(object):
   # Hangman game
   dangle = []
   dangle.append(' *===*')
   dangle.append(' * *')
   dangle.append(' *')
   dangle.append(' *')
   dangle.append(' *')
   dangle.append(' *')
   dangle.append(' =====')
   lad = {}
   lad[0] = [' @ *']
   lad[1] = [' @ *', ' ! *']
   lad[2] = [' @ *', '/! *']
   lad[3] = [' @ *', '/!\\ *']
   lad[4] = [' @ *', '/!\\ *', '/ *']
   lad[5] = [' @ *', '/!\\ *', '/ \\ *']
   z = []
   states = ''' gujarat kerala karnataka westbengal maharashtra uttarakhand odisha tamilnadu
bihar telangana rajasthan chhattisgarh assam jharkhand haryana andhrapradesh
punjab madhyapradesh goa newdelhi ladakh jammukashmir arunachalpradesh manipur
nagaland mizoram tripura meghalaya sikkim '''.split()
   design = '@_@\'@_@\'@_@\'@_@\'@_@\'@_@\'@_@\'@_@\'@_@\'@_@\''
   def __init__(K, *args, **kwargs):
   m, n = 2, 0
   K.z.append(K.dangle[:])
   for k in K.lad.values():
      p, n = K.dangle[:], 0
      for i in k:
         p[m + n] = i
         n += 1
      K.z.append(p)
   def Select_Word(K):
      return K.states[random.randint(0, len(K.states) - 1)]
   def photo(K, x, wordLen):
      for slash in K.z[x]:
         print(slash)
   def game(K, term, value, notpresent):
      q = input()
      if q == None or len(q) != 1 or (q in value) or (q in notpresent):
         return None, False
      m = 0
      p = q in term
      for i in term:
         if i == q:
            value[m] = i
         m += 1
      return q, p
   def data(K, data):
      x = len(K.design)
      print(K.design[:-3])
      print(data)
      print(K.design[3:])
   def process(K):
      name = input("Enter your name: ")
      print("Good Luck ,",name)
      print('*****Hangman game starts*****')
      term = list(K.Select_Word())
      outcome = list('_' * len(term))
      print('The state is: ', outcome)
      y, m, k = False, 0, []
      while m < len(K.z) - 1:
         print('Guess the state name : ', end='')
         x, x1 = K.game(term, outcome, k)
         if x == None:
            print('Repeated character.')
            continue
         print(''.join(outcome))
         if outcome == term:
            K.data('Excellent ! You saved a life :)')
            y = True
            break
         if not x1:
            k.append(x)
            m += 1
         K.photo(m, len(term))
         print('Missed words: ', k)
      if not y:
         K.data('The state was \'' + ''.join(term) + '\' Game over ! Man was hanged')
a = game().process()

输出结果

运行上面的代码给我们以下结果-

Enter your name: Suraj
Good Luck , Suraj
*****Hangman game starts*****
The state is: ['_', '_', '_', '_', '_', '_', '_', '_', '_', '_', '_', '_', '_']
Guess the state name : m
m____________
*===*
*   *
    *
    *
    * 
    *
=====
Missed words: []
Guess the state name : s
m__________s_
*===*
*   *
    *
    *
    *
    *
=====
Missed words: []
Guess the state name : t
m__________s_
*===*
*   *
@   *
    *
    *
    *
=====
Missed words: ['t']
Guess the state name : g
m__________s_
*===*
*   *
@   *
!   *
    *
    *
=====
Missed words: ['t', 'g']
Guess the state name : h
m__h_______sh
*===*
*   *
@   *
!   *
    *
    *
=====
Missed words: ['t', 'g']
Guess the state name : a
ma_h_a__a__sh
*===*
*   *
@   *
!   *
    *
    *
=====
Missed words: ['t', 'g']
Guess the state name : e
ma_h_a__a_esh
*===*
*   *
@   *
!   *
    *
    *
=====
Missed words: ['t', 'g']
Guess the state name : y
ma_hya__a_esh
*===*
*   *
@   *
!   *
    *
    *
=====
Missed words: ['t', 'g']
Guess the state name : b
ma_hya__a_esh
*===*
*   *
@   *
/!  *
    *
    *
=====
Missed words: ['t', 'g', 'b']
Guess the state name : w
ma_hya__a_esh
*===*
*   *
@   *
/!\ *
    *
    * 
=====
Missed words: ['t', 'g', 'b', 'w']
Guess the state name : v
ma_hya__a_esh
*===*
*   *
@   *
/!\ *
/   *
    *
=====
Missed words: ['t', 'g', 'b', 'w', 'v']
Guess the state name : j
ma_hya__a_esh
*===*
*   *
@   *
/!\ *
/ \ *
    *
=====
Missed words: ['t', 'g', 'b', 'w', 'v', 'j']
@_@'@_@'@_@'@_@'@_@'@_@'@_@'@_@'@_@'@
The state was 'madhyapradesh' Game over ! Man was hanged
'@_@'@_@'@_@'@_@'@_@'@_@'@_@'@_@'@_@'
 类似资料:
  • 本文向大家介绍Python实现的简单hangman游戏实例,包括了Python实现的简单hangman游戏实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python实现的简单hangman游戏。分享给大家供大家参考。具体如下: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我正在研究Java中的游戏编程,看是否可行。进行搜索时,我发现了一些关于Java2D的旧参考资料,Project Darkstar(Sun的MMO服务器)和一些有关Java游戏编程的书籍。但是很多信息似乎已经有好几年了。 所以我要问的问题是,有人在Java SE 1.5或更高版本中创建游戏吗? 如果是这样,将使用什么框架,是否有最佳实践或库? 问题答案: 有一个叫做jMonkey(ht

  • 本文向大家介绍python网络编程之五子棋游戏,包括了python网络编程之五子棋游戏的使用技巧和注意事项,需要的朋友参考一下 一.本案例基于UDP的socket编程方法来制作五子棋程序,网络五子棋采用C/S架构,分为服务器端和客户端,游戏时服务端首先启动,当客户端启动连接后,服务器端可以走棋,轮到自己棋才可以在棋盘上落子,同时下方标签会显示对方走起信息,服务器端用户可以通过“退出游戏”按钮可以结

  • #米哈游2022秋招##笔试题目##米哈游笔试#

  • 本文向大家介绍python反编译教程之2048小游戏实例,包括了python反编译教程之2048小游戏实例的使用技巧和注意事项,需要的朋友参考一下 一.背景 一道ctf题,通过破解2048游戏获得flag 游戏的规则很简单,需要控制所有方块向同一个方向运动,两个相同数字方块撞在一起之后合并成为他们的和,每次操作之后会随机生成一个2或者4,最终得到一个“2048”的方块就算胜利了。 二.工具准备 1

  • 问题内容: python中有异步编程的一般概念吗?我可以为一个函数分配一个回调,执行该回调并立即返回主程序流程,无论该函数执行需要多长时间? 问题答案: 在这里看看: Python异步编程 异步编程和扭曲简介 值得检查: asyncio(以前为Tulip)已被检入Python默认分支 于14-Mar-2018编辑 如今,Python具有asyncIO-内置的异步I / O,事件循环,协程和任务 。