Python---进阶---Tkinter---game
一、用tkinter写一个小游戏,来随机生成我们需要的名字
# 用tkinter写一个小游戏,来随机生成我们需要的名字 import tkinter as tk
import random window = tk.Tk() def random_1():
s1 = ['cats', 'hippos', 'cakes']
s = random.choice(s1)
return s def random_2():
s2 = ['eats', 'likes', 'hates', 'has']
s = random.choice(s2)
return s def button_click():
name = nameEntry.get()
verb = random_1()
noun = random_2()
sentence = name + "" + verb + "" + noun
result.delete(0, tk.END)
result.insert(0, sentence) nameLabel = tk.Label(window, text="Name:")
nameEntry = tk.Entry(window)
button = tk.Button(window, text='生成随机名称', command=button_click)
result = tk.Entry(window) nameLabel.pack()
nameEntry.pack()
button.pack()
result.pack() window.mainloop()
二、写一个输入密码的小程序,我们自己设定一个密码,如果用户输入正确则显示 正确,否则,显示不正确
# 写一个输入密码的小程序,我们自己设定一个密码,如果用户输入正确则显示 正确,否则,显示不正确 # encoding:utf-8 import tkinter as tk
window = tk.Tk() def check_password():
password = '123456'
entered_password = passwordEntry.get()
if password == entered_password:
confirmLabel.config(text="正确")
else:
confirmLabel.config(text="不正确") passwordLabel = tk.Label(window, text="Password: ")
passwordEntry = tk.Entry(window, show="*")
button = tk.Button(window, text="校验", command=check_password)
confirmLabel = tk.Label(window) passwordLabel.pack()
passwordEntry.pack()
button.pack()
confirmLabel.pack() window.mainloop() 三、
# encoding:utf-8
# 一个猜数字的小游戏,让计算机随机生成一个整数,用户输入去猜这个整数,
# 如果用户输入正确,那么我们分数加1,并且显示计算机生成的数字
# 如果用户没有输入正确,那么我们的分数不变,还是要显示计算机生成的数字 import random
import tkinter as tk
window = tk.Tk() maxno = 10
score = 0
rounds = 0 def button_click():
global score
global rounds try:
guess = int(guessBox.get())
if 0 < guess <= maxno:
result = random.randrange(1, maxno+1)
if guess == result:
score += 1
rounds += 1
else:
result = "输入不合法"
except:
result = "输入不合法" resultLabel.config(text = result)
scoreLabel.config(text = str(score) + "/" + str(rounds))
guess.delete(0, tk.END) scoreLabel = tk.Label(window)
resultLabel = tk.Label(window)
guessBox = tk.Entry(window)
guessLabel = tk.Label(window, text="请输入1到"+str(maxno))
button = tk.Button(window, text="guess", command=button_click) scoreLabel.pack()
resultLabel.pack()
guessBox.pack()
guessLabel.pack()
button.pack() window.mainloop()
Python---进阶---Tkinter---game的更多相关文章
- Python进阶:函数式编程实例(附代码)
Python进阶:函数式编程实例(附代码) 上篇文章"几个小例子告诉你, 一行Python代码能干哪些事 -- 知乎专栏"中用到了一些列表解析.生成器.map.filter.lam ...
- Python进阶 - 对象,名字以及绑定
Python进阶 - 对象,名字以及绑定 1.一切皆对象 Python哲学: Python中一切皆对象 1.1 数据模型-对象,值以及类型 对象是Python对数据的抽象.Python程序中所有的数据 ...
- Python进阶-继承中的MRO与super
Python进阶-继承中的MRO与super 写在前面 如非特别说明,下文均基于Python3 摘要 本文讲述Python继承关系中如何通过super()调用"父类"方法,supe ...
- Python进阶 - 命名空间与作用域
Python进阶 - 命名空间与作用域 写在前面 如非特别说明,下文均基于Python3 命名空间与作用于跟名字的绑定相关性很大,可以结合另一篇介绍Python名字.对象及其绑定的文章. 1. 命名空 ...
- Python GUI - Tkinter tkMessageBox
Python GUI - Tkinter tkMessageBox: tkMessageBox模块用于显示在您的应用程序的消息框.此模块提供了一个功能,您可以用它来显示适当的消息 tkMess ...
- python进阶学习笔记(一)
python进阶部分要学习的内容: 学习目标: 1.函数式编程 1.1,什么是函数式编程 函数式编程是一种抽象计算的编程模式 不同语言的抽象层次不同: 函数式编程的特点: python支持的函数式编程 ...
- 【python进阶】详解元类及其应用2
前言 在上一篇文章[python进阶]详解元类及其应用1中,我们提到了关于元类的一些前置知识,介绍了类对象,动态创建类,使用type创建类,这一节我们将继续接着上文来讲~~~ 5.使⽤type创建带有 ...
- 【python进阶】Garbage collection垃圾回收2
前言 在上一篇文章[python进阶]Garbage collection垃圾回收1,我们讲述了Garbage collection(GC垃圾回收),画说Ruby与Python垃圾回收,Python中 ...
- Python进阶 函数式编程和面向对象编程等
函数式编程 函数:function 函数式:functional,一种编程范式.函数式编程是一种抽象计算机的编程模式. 函数!= 函数式(如计算!=计算机) 如下是不同语言的抽象 层次不同 高阶函数: ...
- 【python进阶】深入理解系统进程2
前言 在上一篇[python进阶]深入理解系统进程1中,我们讲述了多任务的一些概念,多进程的创建,fork等一些问题,这一节我们继续接着讲述系统进程的一些方法及注意点 multiprocessing ...
随机推荐
- pyinstaller-python->exe
pip install pyinstaller. pyinstaller -F /home/base64_decode.py https://www.imooc.com/article/26772 h ...
- HTTP学习记录:四、头信息(请求和响应)
学习资源主要为:@小坦克HTTP相关博客 一.请求头信息(Request Header) 请求头信息包含比较多,如下: 1.Cache头域 if-modified-Since 作用:把浏览器端缓存页面 ...
- SPA应用性能优化(懒加载)
前提: 如今开发方式都是采用前后台分离的方式,前台采用的方式则是单页面应用开发简称SPA,这种开发模式最大的一个特点就是将有所代码打包成了一个文件, 这会导致了一个问题就是如果这个应用过大,打出来的这 ...
- VS2017使用dotnet命令
添加引用Microsoft.EntityFrameworkCore.Tools 添加引用后提示未找到命令“dotnet ef”向csprog文件添加如下节点 <ItemGroup> < ...
- Redis的消息订阅及发布及事务机制
Redis的消息订阅及发布及事务机制 订阅发布 SUBSCRIBE PUBLISH 订阅消息队列及发布消息. # 首先要打开redis-cli shell窗口 一个用于消息发布 一个用于消息订阅 # ...
- [转帖]Linux shell中2>&1的含义解释 (全网最全,看完就懂)
Linux shell中2>&1的含义解释 (全网最全,看完就懂) https://blog.csdn.net/zhaominpro/article/details/82630528 ...
- IntelliJ IDEA 2019.3 这回真的要飞起来了,新特性抢先看!
IntelliJ IDEA 才公布下一个主要版本 2019.3 的 Roadmap,近日就发布了 IntelliJ IDEA 2019.3 的首个早期访问版本(即 EAP 版本),版本号为 2019. ...
- Linux命令学习(0)
作为一名前端,可能接触到linux的机会并不多,但这不代表就不需要学.对我而言,学习linux主要是为了方便部署我的项目到服务器,我并没有花时间去学这些,只是上网查怎么部署项目,然后按教程一步一步来, ...
- 2019 CSP-S初赛游记
2019-10-19 ——这个注定要被载入史册的日子 作为一名初中生,和lpy大佬一同参加提高组的比赛,而今年普及组和提高组的时间竟然不一样,于是——凌晨六点半,来到了pdyz和高中生一起坐车去. 高 ...
- 小白学Python——用 百度翻译API 实现 翻译功能
本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台: http://api.fanyi.baidu.co ...