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 ...
随机推荐
- Jmeter之线程组(默认)
Jmeter中的采样器必须要基于线程组. 一.添加线程组 在测试计划上右键,然后选择,如下图: 二.线程组界面 三.线程组界面配置说明 1.名称:线程组自定义名称: 2.注释:添加的一些备注说明信息, ...
- eclipse和myeclipse怎么在项目中查找指定代码?https://www.jb51.net/softjc/554889.html
有的童鞋,想eclipse和myeclipse整个项目中查找指定代码,由于补经常使用,可能会补熟悉.如果要去掉项目中所有的某个代码的话,找不到是灰常麻烦的,下面就简单说下怎么查找,希望对需要的人有用. ...
- 【Linux 应用编程】进程管理 - 进程间通信IPC之管道 pipe 和 FIFO
IPC(InterProcess Communication,进程间通信)是进程中的重要概念.Linux 进程之间常用的通信方式有: 文件:简单,低效,需要代码控制同步 管道:使用简单,默认阻塞 匿名 ...
- MariaDB增删改
1.MariaDB 数据类型 MariaDB数据类型可以分为数字,日期和时间以及字符串值. 使用数据类型的原则:够用就行, 尽量使用范围小的,而不用大的 常用的数据类型: 1.整数:int, bit( ...
- hibernate 2 多对多映射
一.实体类 1.Classes.java package cn.gs.wwg.entity; import java.util.Set; public class Classes { private ...
- 【MM系列】SAP MM模块-查看移动平均价的历史记录
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-查看移动平均价的历 ...
- ftp搭建mysql服务器
一.将mysql放入FTP服务器中1.安装FTP yum install -y vsftpd2.准备ftp主目录 mkdir /var/ftp/mysql57/3.官网下载yum仓库的包. ...
- Lesson 5 The facts
go to extremes走极端 provide... with...向..提供.. go to press付印 suspicious,adj. 可疑的:怀疑的:多疑的 fired---同义词--- ...
- 【Python】我的第一个完整的小说爬虫
写在开头 纪念我的第一个爬虫程序,一共写了三个白天,其中有两个上午没有看,中途遇到了各种奇怪的问题,伴随着他们的解决,对于一些基本的操作也弄清楚了.果然,对于这些东西的最号的学习方式,就是在使用中学习 ...
- 20191118 Spring Boot官方文档学习(4.8)
4.8. RSocket RSocket参考 RSocket是用于字节流传输的二进制协议.它通过单个连接传递的异步消息来启用对称交互模型. Spring框架的spring-messaging模块在客户 ...