zoukankan      html  css  js  c++  java
  • Python小游戏 -- 猜单词

    Python初学者小游戏:猜单词


    游戏逻辑就像我们曾经英语学习机上的小游戏一样,电脑会从事先预置的词库中抽取单词,然后给出单词的字母数量,给定猜解次数,然后让玩家进行猜测,并给出每次猜测的正确字母与错误字母。


    涉及知识点random.randint(),print(),input()(raw_input())


    参考实现代码


    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    from __future__ import print_function
    import os
    import sys
    import random
    import time
    
    #单词库
    Words = ['apple','pear','banana']
    
    #单词随机选择函数
    def getRandomWord():
    	global Words
    	return Words[random.randint(0,len(Words)-1)]
    	
    #猜测流程
    def getGuess():
    	while True:
    		guess = raw_input("Guess the Word: ")
    		for letter in guess:
    			if letter in wrongLetters:
    				print("The char: " + letter + " you have already guessed")
    				continue
    		
    		break
    	return guess
    	
    #判别显示流程
    def displayGame(secretLetters,wrongLetters,secretWord):
    	global guess
    	global count
    	print("Info: ")
    	for letter in guess:
    		if letter in secretWord:
    			secretLetters += letter
    		else:
    			wrongLetters += letter
    	
    	print("SecretLetters: ",end = '')
    	for letter in secretLetters:
    		print(letter,end = ' ')
    	print()
    	
    	print("WrongLetters: ",end = '')
    	for letter in wrongLetters:
    		print(letter,end = ' ')
    	print()
    	print("Count: "+str(count))
    	blanks = '_'*len(secretWord)
    	for i in range(len(guess)):
    		if i >=len(secretWord):
    			break
    		if secretWord[i]==guess[i]:
    			blanks = blanks[:i] + secretWord[i] + blanks[i+1:]
    	print("Word: ",end = '')
    	for i in blanks:
    		print(i,end=" ")
    	print()
    	print()
    	
    	
    #主流程	
    	
    secretLetters = ''
    wrongLetters = ''
    secretWord = ''
    guess = ""
    count = 6
    
    os.system('cls')
    secretWord = getRandomWord()
    while True: 
    	displayGame(secretLetters,wrongLetters,secretWord)
    	guess = getGuess()
    	if guess == secretWord:
    		print ("You win !")
    		break
    	else:
    		if count <= 0:
    			print("You lose !")
    			break
    		else:
    			count -= 1
    			continue


  • 相关阅读:
    JS设计模式——工厂模式详解
    JS 使用const声明常量的本质(很多人都有误解)
    模拟ES6中的Promise实现,让原理一目了然
    JS设计模式——观察者模式(通俗易懂)
    JS设计模式——单例模式剖析
    C#播放文字内容
    通过自定义扩展方法DistinctBy实现去重
    C#缓存HttpRuntime.Cache
    Oracle中dblink的使用
    Oracle查询最近执行的sql脚本
  • 原文地址:https://www.cnblogs.com/csnd/p/12897060.html
Copyright © 2011-2022 走看看