【python小练习】简单的猜数字游戏

简单的猜数字游戏

前两天在论坛回答问题时候,看到一个猜数字的游戏,就在原来的基础上改了一下,玩一玩。

此程序,数字范围和尝试次数是事先设定好的,当然可以通过代码修改。经过测试,由于难度过大,我在其中加入的作弊功能,聪明的你一定能发现啦~

代码思路:

随机生成初始数 random.randint()

循环限制尝试次数

将输入的数与初始数进行比较,并输出比较结果

经过不断尝试,相等后会下载一张暴漫的图片,暴漫的图片分两种

imglist = re.findall(‘data-original-image-url="(.*?\.jpg)"‘,html) # 一种是单幅的图片
picSmall = re.findall(‘src="(https://wanzao2.b0.upaiyun.com/web_maker/.*?-picSmall)‘,html) # 另一种是一系列组图,因为一系列的这种我还没想到怎么区分不同的组图,所以就使上一种了

最后用urllib下载列表中随机一张,就以这张图片作为答对的奖励啦。其实还可以做翻页的,但想到就是奖励,没有太大必要。

代码:

import re
import requests
import random
import urllib.request

def getHtml(url):
    headers = {
        ‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0‘,
        ‘Accept‘: ‘text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8‘,
        ‘Accept-Encoding‘: ‘gzip, deflate‘,
        ‘Upgrade-Insecure-Requests‘: ‘1‘,
    }
    page = requests.get(url,headers=headers)
    html = page.text
    return html

def getImg(html):
    imglist = re.findall(‘data-original-image-url="(.*?\.jpg)"‘,html) # .decode(‘utf-8‘)
    # picSmall = re.findall(‘src="(https://wanzao2.b0.upaiyun.com/web_maker/.*?-picSmall)‘,html)
    rad = random.randint(0,len(imglist))
    urllib.request.urlretrieve(imglist[rad],‘开心一刻.jpg‘)
    print(‘请在目录下查看今日图片...‘)

if __name__ == ‘__main__‘:

    i=1
    jihui = 8
    number=random.randint(1,1000)
    usage = ‘‘‘
    ------------------------
    -    每日一笑 v 1.0    -
    -    数字范围:1-1000  -
    -    尝试次数:8       -
    ------------------------
    ‘‘‘
    print(usage)
    temp=int(input(‘请猜一猜今天的数字是什么:‘))
    while i<9:
            if temp == 123456:
                    print(‘答案是‘+ str(number) +‘...‘)
            if temp!=number:
                    jihui -= 1
                    if jihui == 0:
                            print(‘机会用完了...‘)
                            break
                    if temp>number:
                            print(‘哎呀,大啦!‘ + ‘还剩余‘+ str(jihui) +‘次机会..‘)
                    elif temp<number:
                            print(‘哎呀,小啦,小啦!‘+‘还剩余‘+ str(jihui) +‘次机会..‘)
                    temp=int(input(‘请再猜一次吧:‘))
            else:
                    print(‘对啦对啦!!!‘)
                    html = getHtml("http://baozoumanhua.com/all/hot?page=1")
                    getImg(html)
                    break
            i+=1
    print(‘游戏结束~‘)

原文地址:https://www.cnblogs.com/zhaijiahui/p/8244669.html

时间: 2024-08-11 07:49:01

【python小练习】简单的猜数字游戏的相关文章

Python实现简单的猜数字游戏

Python实现简单的猜数字游戏,具体如下: 随机生成一个1-10之间的数字,让用户来猜,当猜错时,会提示猜的数字是大还是小了,直到用户猜对为止. import random secret = random.randint(1,10) #print(secret) print('------猜数字游戏!-----') guess = 0 while guess != secret: temp = input('猜数字游戏开始,请输入数字:') guess = int(temp) if guess

C++编写的一个简单的猜数字游戏源码

将开发过程比较重要的一些内容段做个记录,下面内容段是关于C++编写的一个简单的猜数字游戏的内容. #include <iostream> #include <string> #include <cstdlib> #include <cctype> #include <ctime> #include <conio.h> using namespace std; int main () { int wins = 0; int losses

python写简单的猜数字游戏

最近在学python,学到控制流程要写一个猜数字游戏.不经想起小时候三色台的一个综艺节目,里面也有个猜数字游戏,于是就想写个简单的自己玩玩也好. 规则:[0-100]随机生成一个数字,然后在猜数字,每叫一次数字都是出现一个区间,不断的缩小区间直到猜对正确数字. 刚开始写就想着用赋值的方法解决吧,可变量越来越多,头晕啊!冷静下,仔细想来,其实我要的结果就是区间的不断减小,这就没必要拘束在变量里面了,于是就用了list.list的排序,可变都有助于功能的实现,果然功能就简单的实现了. import 

用MFC完成一个简单的猜数字游戏: 输入的四位数中,位置和数字都正确为A,数字相同而位置不同的为B。

最近学习了MFC一些比较基础的知识,所以打算通过做一个简单的数字游戏来理解MFC的流程并进一步熟悉其操作. 在这里,我做了一个猜数字的小游戏.第一步当然是设计主界面,先给大家展示一下游戏界面: 主界面: 从这个主界面可以看到,它包含标题,菜单栏,工具栏. 标题是给人一个认识,这是什么游戏,标题设置为:“猜数游戏”: 而菜单栏和工具栏才是游戏的核心,它要保证能够完成游戏的基本功能. 菜单栏和工具栏是对应的,包含了”start“,"help","restart"这三个菜

用C语言编写的简单的猜数字游戏

#include <stdio.h>#include <time.h>#include <stdlib.h>int main(){          int random = 0;          int input = 0;          int start = 1;          while (start)             {                   printf("*********************\n")

使用python进行简单的猜数字游戏(while循环)

本案例主要是练习while循环,需求:如果给出某人的年龄,让你猜,猜对的话打印出You guess right 如果猜的数字小于真实年龄值,那就打印出Think bigger,如果该数字大于真实年龄值就打印Think smaller :如果不想玩了就按n结束,如果继续就按enter继续 oldboy_age = 56 count = 0 #添加计数器,初始数据为0 while count <3:#当count小于3 的时候执行下面代码     guess_age = int ( input ( 

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能&#39;menufile

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile 1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile' 2 #!usr/bin/env python 3 #-*-c

简单的猜数字小游戏

/** 简单的猜数字小游戏 要求如下: 用户输入想猜测数字的范围,输入1000则是0~1000之内的数字,程序就会内置一个 1 到 1000 之间的数字作为猜测的结果,由用户猜测此数字,用户每猜测一次,由系统提示猜测结果:大了.小了或者猜对了:直到用户猜对结果,则提示游戏结束.用户可以提前退出游戏,即,游戏过程中,如果用户录入数字0则游戏终止.加入新功能: 记次猜测次数功能,提示游戏开始时间,计猜测总用时功能,提示游戏结束时间 思路:1.用户输入电脑生成的数值取值范围,接收并判断是否是合理数值?

python实现简单猜数字游戏

#!/usr/bin/env python import os import random import sys import time def yanse(s): print('\033[25;31;40m %s \033[0m' %s) def menu(): #print(' @@@@@@@@开始猜数字游戏@@@@@@@@') #print(' @@@@@@@@只有3次机会@@@@@@@@') a= '开始猜数字游戏' b='只有3次机会' #print(a.center(40,'#'))