‘壹’ 请用python编一个小游戏,如五子棋,连连看,贪吃蛇,扫雷,计算器等等
#!/usr/bin/python
from Tkinter import *
import random
class snake(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.body = [(0,0)]
self.bodyid = []
self.food = [ -1, -1 ]
self.foodid = -1
self.gridcount = 10
self.size = 500
self.di = 3
self.speed = 500
self.top = self.winfo_toplevel()
self.top.resizable(False, False)
self.grid()
self.canvas = Canvas(self)
self.canvas.grid()
self.canvas.config(width=self.size, height=self.size,relief=RIDGE)
self.drawgrid()
s = self.size/self.gridcount
id = self.canvas.create_rectangle(self.body[0][0]*s,self.body[0][1]*s,
(self.body[0][0]+1)*s, (self.body[0][1]+1)*s, fill="yellow")
self.bodyid.insert(0, id)
self.bind_all("<KeyRelease>", self.keyrelease)
self.drawfood()
self.after(self.speed, self.drawsnake)
def drawgrid(self):
s = self.size/self.gridcount
for i in range(0, self.gridcount+1):
self.canvas.create_line(i*s, 0, i*s, self.size)
self.canvas.create_line(0, i*s, self.size, i*s)
def drawsnake(self):
s = self.size/self.gridcount
head = self.body[0]
new = [head[0], head[1]]
if self.di == 1:
new[1] = (head[1]-1) % self.gridcount
elif self.di == 2:
new[0] = (head[0]+1) % self.gridcount
elif self.di == 3:
new[1] = (head[1]+1) % self.gridcount
else:
new[0] = (head[0]-1) % self.gridcount
next = ( new[0], new[1] )
if next in self.body:
exit()
elif next == (self.food[0], self.food[1]):
self.body.insert(0, next)
self.bodyid.insert(0, self.foodid)
self.drawfood()
else:
tail = self.body.pop()
id = self.bodyid.pop()
self.canvas.move(id, (next[0]-tail[0])*s, (next[1]-tail[1])*s)
self.body.insert(0, next)
self.bodyid.insert(0, id)
self.after(self.speed, self.drawsnake)
def drawfood(self):
s = self.size/self.gridcount
x = random.randrange(0, self.gridcount)
y = random.randrange(0, self.gridcount)
while (x, y) in self.body:
x = random.randrange(0, self.gridcount)
y = random.randrange(0, self.gridcount)
id = self.canvas.create_rectangle(x*s,y*s, (x+1)*s, (y+1)*s, fill="yellow")
self.food[0] = x
self.food[1] = y
self.foodid = id
def keyrelease(self, event):
if event.keysym == "Up" and self.di != 3:
self.di = 1
elif event.keysym == "Right" and self.di !=4:
self.di = 2
elif event.keysym == "Down" and self.di != 1:
self.di = 3
elif event.keysym == "Left" and self.di != 2:
self.di = 4
app = snake()
app.master.title("Greedy Snake")
app.mainloop()
贪食蛇
‘贰’ 你们都用python实现了哪些办公自动化
在办公自动化领域,Python 成为了许多人的首选工具。其强大的功能和简洁的代码风格,使其在处理各种办公任务时表现出色。下面,我们来看看 Python 在办公自动化中的一些应用实例:
1. 操作 Excel
使用 Python,可以实现对 Excel 的常见操作,如批量合并、数据透视表构建以及读取、写入数据。尤其在处理大量数据时,Python 的效率远远超过传统的手动操作。
2. 操作 Word
Python 提供了对 Word 的自动化支持,能够完成常见操作并实现批量转换为 PDF 格式。这在文档管理和归档时极为有用。
3. 操作 PPT
利用 Python,用户可以轻松地实现 PPT 的自动化操作,如创建、编辑、添加幻灯片等。这大大提高了办公效率。
4. 收发电子邮件
Python 的邮件处理库,如 smtplib、smtplib等,允许用户自动发送和接收邮件,适用于通知、报告等场景。
5. 微信自动回复
借助 Python,可以实现微信的自动回复功能,提高沟通效率,减少人工干预。
6. 微信自动抢红包
通过 Python 编写脚本,可以实现自动抢红包功能,避免了手动操作的繁琐。
7. 清除删了自己微信的人
利用 Python,可以自动检测并清除那些删除了自己微信好友的人,维护社交网络的健康。
8. 蚂蚁森林定时自动收能量
Python 脚本可以定时自动收取蚂蚁森林能量,确保用户不会错过任何奖励。
9. 制作办公自动化小软件
借助 Python 库 PySimpleGUI,用户可以快速开发出满足特定需求的办公自动化软件,提高工作效率。
10. 自动化操作鼠标
Python 的自动化库,如 pyautogui,允许用户实现自动化操作鼠标功能,如点击、拖动等,提高工作效率。
11. 实现 QQ 消息自动回复
通过编写 Python 脚本,可以实现 QQ 消息的自动回复,提高在线沟通效率。
12. 自动玩扫雷小游戏
利用 Python,可以开发出自动扫雷程序,帮助用户在游戏中提高胜率。
13. 玩微信跳一跳
通过 Python,可以实现自动跳一跳游戏,让用户在娱乐的同时享受自动化带来的便利。
以上是 Python 在办公自动化中的应用实例,展示了其在提高工作效率、简化工作流程方面的巨大潜力。通过学习和实践,用户可以进一步探索 Python 在办公自动化领域的更多可能性。