数字炸弹

相信大家在聚餐时都玩过猜数字游戏,游戏是由某人随机出一个指定范围内的数,然后其他人一个一个猜,猜的过程中区间不断缩小,直到猜中为止。

这里的猜数字游戏就是用程序代替出数字的人,程序算法步骤为:1.输入数字区间→2.系统产生区间内的随机数→3.玩家输入自己猜的数字→4.比较玩家猜的与答案的高低并提示→5.未猜中则回到第3步,猜中则提示猜次数。

import random

bot = int(input('设置一个最低数\n'))

top = int(input('设置一个最高数\n'))

rand = random.randint(bot, top)

print('Random number in [' + str(bot) + ',' + str(top) + '] generated!')

num = int(input('###请说一个数###\n'))

cnt = 1

while (num != rand):

if (num < rand):

print('*_* 比正确答案低')

else:

print('T_T 比正确答案高')

num = int(input('###Guess the number###\n'))

cnt = cnt + 1

print('^_^ 您猜中答案用了 [%d] 次' % cnt)效果展示

关不掉的窗口

这个小窗口的呈现效果很简单,一句话,两个按钮,我们要做一个鼠标移到按钮上就会变成肯定答案的效果,外加一个点击第一个窗口关闭按钮弹出第二个窗口的效果。这里我们就只做两个窗口即可退出的效果。

第一步先导入tkinter库;第二步设置初始窗口展示界面相关组件参数,以及两个按钮的绑定事件;第三步编写两个按钮的鼠标移入切换按钮文字事件函数;第四步触发窗口事件。

from tkinter import *

class YouLikeMe:

def __init__(self):

window = Tk()

label = Label(window, text='你是不是喜欢我?')

self.btyes = Button(window, text='不是', height=1, width=6)

self.btno = Button(window, text='是的', height=1, width=6)

label.place(x=60, y=70)

self.btyes.place(x=40, y=130)

self.btno.place(x=120, y=130)

self.btyes.bind('', self.event1) # 将按钮与鼠标事件绑定,是指鼠标光标进入按钮区域

self.btno.bind('', self.event2)

window.mainloop()

def event1(self, event): # 切换按钮文字

self.btyes['text'] = '是的'

self.btno['text'] = '不是'

def event2(self, event):

self.btyes['text'] = '不是'

self.btno['text'] = '是的'

YouLikeMe()

window = Tk()

label = Label(window, text='关闭窗口也改变不了你喜欢我的事实')

label.place(x=2, y=130)

button = Button(window, text='确定', command=window.destroy)

button.place(x=80, y=150)

window.mainloop()效果展示

猜拳小游戏

实现这个程序的代码也很简单,首先我们先调用random函数生成随机数,然后用户输入数字0-2,输出与之相对应的石头剪刀布。

import random #导入随机模块

num = 1

yin_num = 0

shu_num = 0

while num <= 3:

if shu_num == 2 or yin_num == 2:

break

user = int(input('请出拳 0(石头) 1(剪刀) 2(布)'))

if user > 2:

print('不能出大于2的值')

else:

data = ['石头', '剪刀', '布']

com = random.randint(0, 2)

print("您出的是{},电脑出的是{}".format(data[user], data[com]))

if user == com:

print('平局')

continue

elif (user == 0 and com == 1) or (user == 1 and com == 2) or (user == 2 and com == 0):

print('你赢了')

yin_num += 1

else:

print('你输了')

shu_num += 1

num += 1效果展示

小学生python游戏编程_适合刚入门Python小白的趣味游戏编程相关推荐

  1. 短视频剪辑的三大要点教程,适合刚入门的小白

    短视频剪辑的三大要点教程,适合刚入门的小白 做短视频剪辑,并不仅仅只是将不需要的内容剪辑掉就可以了,我们还需要注意三个要点,比较适合刚刚入门的小白,有兴趣的小伙伴们赶紧收藏起来吧! 要点一:两个统一. ...

  2. 哪个PCB设计软件适合刚入门的小白?

    哪个软件适合刚入门的小白?什么软件能让PCB设计高手如虎添翼?市场上PCB设计软件种类比较多,有付费的也有免费的,目前普及率比较高的软件有以下这三种:Altium Designer(简称AD).PAD ...

  3. python问题分享_零基础入门Python常见问题分享

    零基础入门Python常见问题有哪些?作为经常混迹在各大Python技术论坛的小编而言,见到最多的话题就是:学习Python难不难?零基础可以学习Python吗?如何学习Python?等等.今天小编就 ...

  4. 50行python游戏代码_使用50行Python代码从零开始实现一个AI平衡小游戏

    使用50行Python代码从零开始实现一个AI平衡小游戏 发布时间:2020-10-23 09:26:14 来源:脚本之家 阅读:74 集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何 ...

  5. 50行的python游戏代码_使用50行Python教AI玩运杆游戏

    编译:yxy 出品:ATYUN订阅号 嗨,大家好!今天我想展示如何使用50行Python代码教一台机器来平衡杆!我们将使用标准的OpenAI Gym作为我们的测试环境,并只使用numpy创建我们的智能 ...

  6. python回合制游戏教程_适合初学者练手的 10 个 有趣Python项目|python教程|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 想成为一个优秀的开发者,没有捷径可走,势必要花费大量时间在键盘后. 而不断地进行各种小项目开发,可以为之后 ...

  7. python编程入门书籍推荐-给刚入门python的朋友推荐几本书

    给刚入门python的朋友推荐几本书 1.python编程 从入门到实践 本书是一本针对所有层次的Python读者而作的Python入门书.全书分两部分:首部分介绍用Python 编程所必须了解的基本 ...

  8. 视频教程-做游戏学Python-Python语言快速入门-Python

    做游戏学Python-Python语言快速入门 20年软件项目开发管理经验 工信部人才交流中心特聘专家讲师 日本U-CAN在线教育特聘主任讲师 国家十二·五规划软件工程教材作者(书:清华大学出版社出版 ...

  9. 学习笔记:Java 并发编程①_基础知识入门

    若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 视频下载: ...

  10. dt测试软件的学习心得,无线网络优化dt测试心得_适合新手入门,高手进阶_5年项目经验实战经验.docx...

    无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 路测中不常见的问题和个人心得 1.深井子镇投诉测试报告 ...

最新文章

  1. Java线性池的使用方式以及核心运行原理
  2. Python maximum recursion depth exceeded while calling a Python object (gevent的SSL无限递归错误)的问题解决
  3. 2012年回忆录及2013年目标设立
  4. 编程杂谈---vb,vb.net,java数据类型区分
  5. 句子分类_Bert做新闻标题文本分类
  6. 中国科学院大学计算机研究生拟录取名单,2019中国科学院大学硕士考研研究生拟录取名单全部(2)...
  7. oracle隐含参数 开库,Oracle数据库隐含参数介绍
  8. 获取打印机分辨率_喵喵机体验——爱不释手的错题打印机
  9. 手机算通用计算机还是,通用盾是一种u盾。手机和电脑都可以用。问一...
  10. Hive读时模式和写时模式的区别是什么?
  11. 最新版本飞信协议抓包
  12. TCP/IP网络编程 学习笔记_9 --域名系统(DNS)
  13. js获取当前时间(标准时间)
  14. Vue中keep-alive用法
  15. 浏览记录-history
  16. 时间、空间、对象 海量极速多维检索 - 阿里云RDS PostgreSQL最佳实践
  17. show和shown区别
  18. 深入理解YII2.0
  19. 接口测试试题汇总jmeter
  20. 2022-2027年中国互联网+长租公寓市场规模预测及投资战略咨询报告

热门文章

  1. js 使用Rsa 加密 解密
  2. 华为NP课程笔记27-QINQ概述
  3. Java开发视频网站大概需要多少钱?
  4. psasp和matlab,PSASP与Matlab/SimPowerSystems联合仿真接口方法研究
  5. 计算机网络工程师模拟题库,网络工程师模拟试题
  6. getch方法_C语言中getch()函数详解(附实例)
  7. 没有发现必备补丁文件‘NewopUI.pak’?
  8. IFC最新标准 IFC4X3 RC2 和 IFC4X3 RC4 特点
  9. echarts初次使用,自定义china-map省份默认颜色
  10. 编程之美(The beauty of programming)