简单的猜数字游戏

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

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

代码思路:

随机生成初始数 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': '',
}
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('游戏结束~')

最新文章

  1. 屌丝程序员的梦想 (二) 屌丝IT梦开始地方
  2. svg-filter高斯模糊
  3. 烂泥:学习ssh之ssh密钥随身携带
  4. Mysql分表和分区的区别、分库分表介绍与区别
  5. Oracle锁的机制
  6. Linux常用命令_(基本命令)
  7. JMETER JDBC操作
  8. ORA-04052\ ORA-00604\ORA-12154
  9. memcache 存储session
  10. Oracle 事务相关的一些测试
  11. App的token机制
  12. 基于JSP+SERVLET的新闻发布系统(一)
  13. 【转】解决UpdatePanel 与 jQuery的冲突
  14. Chapter2:Discrete-Time Signal Processing and Short-Time Fourier Analysis
  15. java.lang.ClassCastException: com.sun.proxy.$Proxy27 cannot be cast to com.bbk.n002.service.QuestionService
  16. 第九节:详细讲解Java中的泛型,多线程,网络编程
  17. [Oracle,2018-01-11] 导出数据库说明文档
  18. Redis缓存雪崩、缓存穿透、热点Key解决方案和分析
  19. 查看django版本的方法
  20. PHP-Ajax跨域解决方案

热门文章

  1. 查询redis数据
  2. php5.4后htmlspecialchars输出为空的问题
  3. xp与win7双系统时删除win7启动菜单
  4. springboot1.5升级2.0后遇到的问题
  5. 简单贪心) Repair the Wall hdu2124
  6. SPI设计
  7. mysql 遍历所有的库并根据表和sql语句备份
  8. Spring+Mybatis+SpringMVC+Atomikos多数据源共存+不同数据库事物一致性处理
  9. 【leetcode-69】 x 的平方根
  10. 在java1.8下使用jetty报错java.lang.CharSequence cannot be resolved