python学习的一些感悟
2024-08-29 12:41:06
首先声明,这里用到的库是在coursera上学习时,老师建立的一个库
#timer import simplegui
import random # global state message = "Python is Fun!"
position = [50, 50]
width = 500
height = 500
interval = 2000 #Handler for text box
def update(text):
global message
message = text #Handler for timer
def tick():
x = random.randrange(0, width)
y = random.randrange(0, height)
position[0] = x
position[1] = y #Handler for draw on canvas
def draw(canvas):
canvas.draw_text(message, position, 36, "Yellow") #Create a frame
frame = simplegui.create_frame("Home", width, height) #Register event handler
text = frame.add_input("Message", update, 150)
frame.set_draw_handler(draw)
timer = simplegui.create_timer(interval, tick) frame.start()
timer.start()
首先看一下上述代码,是一个简单是屏幕保护程序
由上述代码引发的一些想法:
python编程现在我觉的它的最大的一个特点,就是把
事件分为好多个不相干的子事件
例如这个程序:
一个简单的屏幕保护程序:
把想要显示的message设为一个事件
把定时的改变位置设置一个事件
如果可以的话还可以把时间间隔设置为一个事件
最后综合起来画图设置为一个事件
适当的分解程序
重点是互不相干!!
另外在上课时也发现一个问题,虽然找到了答案,老师也给出了简答
问题:为什么改变了变量position,而不用声明
global?
答:因为它只是依次的改变了position的元素,而
没有改变position本身
最新文章
- jq实现 按钮点击一次后 3秒后在可点击
- Atom 备份神器 —— Sync Settings
- Unity3D研究院之Machine动画脚本自动生成AnimatorController(七十一)
- 重新开始学习javase_隐藏实施过程
- vue指令v-once示例解析
- 并发编程(四)—— ThreadLocal源码分析及内存泄露预防
- 71.纯 CSS 创作一个跳 8 字型舞的 loader
- debug错误
- python魔法方法
- KMP字符串匹配(模板)
- openstack-on-centos7之各组件服务
- python报错IndexError: list index out of range
- Codeforces 666E Forensic Examination SAM+权值线段树
- win7+ oracle +php环境的搭建
- Gradle-5.3:依赖-管理依赖的版本(传递(transitive)\排除(exclude)\强制(force)\动态版本(+))
- 解决安装macports更新失败问题
- 15款很棒的 JavaScript 开发工具
- Carrying per-request context using the HttpRequestMessage.Properties
- Docker扩展.md
- SQL的学习
热门文章
- Unity UGUI——Rect Transform组件(基础属性)
- FreeMarker 自己定义指令(三)
- 树莓派做AP发射wifi(RTL8188CUS芯片) 分类: shell ubuntu Raspberry Pi 2014-11-29 01:25 822人阅读 评论(0) 收藏
- android 35 ListView增删改差
- android 28 SimpleAdapter
- IOS-tableView中的cellHeadView随着table滚动
- Java基础知识强化02:import static 和 import
- mac skim 修改背景色
- U3D 通过预置对象实现手动创建精灵
- java 字符串转int