【通关秘籍】昆士兰大学UQ CSSE1001\/7030 Python Assignment 3 超详细解析

原创 2019年10月11日 澳洲IT圈


文| Nancy

编辑| Chris


相信最近又有很多同学头疼昆士兰大学CSSE1001/7030 —— Python的第三次作业,今天匠人7分Tutor,Nancy学姐继续为大家分享一些Python核心知识点和学习经验,帮助大家取得高分!


702GUI部分

1. 绑定事件,需要调用bind方法。bind函数中,第一个参数为要绑定的事件名称,第二个参数为当触发该事件时,会调用的function.

调用方法如下:Widget.bind(event,handler)

例如frame.bind("<Button-1>", callback) ,即给鼠标左键绑定了一个callback方法。


2. GUI 基本布局

 2.1. Tkinter  pack() 的常见选项和功能

(1)anchor:当可用空间大于组件所需求的大小时,可以利用该属性决定想要处于这个容器的位置

(2)side:  设置组件的添加位置

3)expand:bool 值指定当父容器增大时是否拉伸组件。

(4)fill:设置组件是否沿水平或垂直方向填充。该选项支持 NONE、X、Y、BOTH 四个值,其中 NONE 表示不填充,BOTH 表示沿着两个方向填充。

(5)ipadx, ipady: 在组件内部的x/y方向上padding

(6)padx, pady:  调整x/y方向上与其他组件的距离

 2.2. 如何创建Menu 以及对话框。

(1)创建menu需要调用tk.Menu()方法,

(2)生成可以弹出的对话框需要使用messagebox。

对话框有以下四种:

  ①询问确认对话框【返回”yes”,”no”】

     kinter.messagebox.askquestion(消息框标题, 提示内容)

  ②确认/取消对话框【返回True False】

     tkinter.messagebox.askokcancel(消息框标题, 提示内容)

   ③是/否对话框【返回True False】

      tkinter.messagebox.askyesno(消息框标题,提示内容)

   ④重试/取消对话框:【返回值:True False】:

       tkinter.messagebox.askretrycancel(标题,提示内容)

Pymunk

类似box2d的开源物理图形模拟库 OpenCV , 目前最好的开源图像/视觉库,包括图像处理和计算机视觉方面的很多通用算法。在本次作业中,只需要双击运行一次setup.py即可安装成功。

类方法

在类的函数的形参定义中,参数后面加冒号表示对该变量的注释,如:

def _draw(self, instance:Player): //表示变量instance是Player的实例,可以直接调用Player类的方法

参数后面有等号表示默认值,若调用该函数时不传该变量的值,则会直接使用默认值

如:

结尾

同学们在调用类的函数的时候,一定要注意可以调用该方法的到底是哪一个class的实例,这样才不会弄混或者因为错误调用而出现bug。


函数调用的时候一定要加小括号表示调用,这也是在写前两个作业中看到的同学们经常会犯的小问题。


运行代码的时候,当出现报错时,最下面的那一个error是导致问题出现的直接原因,因此可以试着从下往上查找问题,试着理解错误原因,慢慢把思路捋清楚不要着急,当遇到错误较多而当前的bug又无法解决时,可以先跳过,先去解决下一个


在Pycharm使用中,如果想要找某个具体方法是在文件如何定义的,可以使用快捷键

Ctrl+f来搜索,或者从菜单栏中选择Edit->find来根据函数名搜索。


本次作业的最后提交日期10月18号晚上八点半,希望同学们提前开始写起来。

并随时注意blackboard上发的通知。

避免出现因为没有及时更新代码版本而产生的问题。


祝大家assignment都拿到高分哦~

有任何课程疑问

欢迎咨询我们的匠人小安哦~


收藏 已赞