Python交互式编程导论----事件驱动编程,,传统的编程是如下线性
Python交互式编程导论----事件驱动编程,,传统的编程是如下线性
传统的编程是如下线性模式的:
开始--->代码块A--->代码块B--->代码块C--->代码块D--->......--->结束
每一个代码块里是完成各种各样事情的代码,但编程者知道代码块A,B,C,D...的执行顺序,唯一能够改变这个流程的是数据。输入不同的数据,根据条件语句判断,流程或许就改为A--->C--->E...--->结束。每一次程序运行顺序或许都不同,但它的控制流程是由输入数据和你编写的程序决定的。如果你知道这个程序当前的运行状态(包括输入数据和程序本身),那你就知道接下来甚至一直到结束它的运行流程。
对于事件驱动型程序模型,它的流程大致如下:
开始--->初始化--->等待
与上面传统编程模式不同,事件驱动程序在启动之后,就在那等待,等待什么呢?等待被事件触发。传统编程下也有“等待”的时候,比如在代码块D中,你定义了一个input(),需要用户输入数据。但这与下面的等待不同,传统编程的“等待”,比如input(),你作为程序编写者是知道或者强制用户输入某个东西的,或许是数字,或许是文件名称,如果用户输入错误,你还需要提醒他,并请他重新输入。事件驱动程序的等待则是完全不知道,也不强制用户输入或者干什么。只要某一事件发生,那程序就会做出相应的“反应”。这些事件包括:输入信息、鼠标、敲击键盘上某个键还有系统内部定时器触发。
Python中利用simplegui模块实现程序交互,结构如下:
以下是一个简单的交互编程程序:
1 # Import the module 2 import simplegui 3 4 # Define global variables (program state) 5 counter = 0 6 7 # Define "helper" functions 8 def increment(): 9 global counter10 counter = counter + 111 12 # Define event handler functions13 def tick():14 increment()15 print counter16 17 # Create a frame18 frame = simplegui.create_frame("Test",100,100)19 20 # Register event handlers21 timer = simplegui.create_timer(1000,tick)22 frame.add_button("Click me!",tick)23 24 # Start frame and timers25 frame.start()26 timer.start()
Python交互式编程导论----事件驱动编程
相关内容
- 优雅的使用python之环境管理,,优雅的使用pytho
- Python 入门学习笔记,,安装和运行官网下载安
- Python 嘉宾列表问题,,某书上的练习题,当作
- python判断命令执行成功,,if os.syst
- 你见过最大的Python项目是多大?十万行的你见过?还说
- python路--字典,,字典不可变类型:整型
- 古典问题:有一对兔子,从出生后第3个月起每个月都生
- IntelliJ IDEA下Java、Python实现Thrift调用,,终于跑通了!!
- python3爬虫-使用requests爬取起点小说,,import req
- install python3 env in centos7,,1. install
评论关闭