Python-100-Day ③ 常用/内置模块
图形用户界面和游戏开发
tkinter
待补充
基本上使用tkinter来开发GUI应用需要以下5个步骤:
- 导入tkinter模块中我们需要的东西。
1
2import tkinter
import tkinter.messagebox - 创建一个顶层窗口对象并用它来承载整个GUI应用。
1
2# 创建顶层窗口
top = tkinter.Tk() - 在顶层窗口对象上添加GUI组件。
1
2
3
4
5
6
7
8
9# 设置窗口大小
top.geometry('240x160')
# 设置窗口标题
top.title('小游戏')
# 创建标签对象并添加到顶层窗口
label = tkinter.Label(top, text='Hello, world!', font='Arial -32', fg='red')
label.pack(expand=1)
# 创建一个装按钮的容器
panel = tkinter.Frame(top) - 通过代码将这些GUI组件的功能组织起来。
1
2
3
4
5
6# 创建按钮对象 指定添加到哪个容器中 通过command参数绑定事件回调函数
button1 = tkinter.Button(panel, text='修改', command=change_label_text)
button1.pack(side='left')
button2 = tkinter.Button(panel, text='退出', command=confirm_to_quit)
button2.pack(side='right')
panel.pack(side='bottom') - 进入主事件循环(main loop)。
1
2# 开启主事件循环
tkinter.mainloop()
pygame
TODO
文件和异常
打开文件
通过Python内置的open
函数,可以指定文件名、操作模式、编码信息等来获得操作文件的对象,接下来就可以对文件进行读写操作了
1 | open( |
对于操作模式, 可以参考:
字符 | 作用 |
---|---|
‘r’ | 读文件 (默认) |
‘w’ | 写文件, 首先会将文件截断 |
‘x’ | 新建文件, 然后以写模式打开 |
‘a’ | 写文件, 如果文件已存在, 则追加到文件末尾 |
‘b’ | 二进制模式 |
‘t’ | 文本模式 (默认) |
‘+’ | 更新文件 (可读可写) |
‘U’ | universal newline mode (deprecated) |
使用一些模式的组合, 可以实现简单的功能:
- 默认模式为
'rt'
, 即以只读文本形式打开 - 使用
'w+b'
, 可以截断二进制文件 - 使用
'r+b'
, 不截断二进制文件 - 模式
'x'
包含'w'
, 但会当文件已经存在时, 抛出FileExistsError
异常
对于文本文件, 常用的打开模式如下:
1 | try: |
在读取文件时, 可能会出现的异常有:
异常 | 含义 |
---|---|
FileNotFoundError |
文件不存在 |
FileExistsError |
文件已经存在 ('x' 模式) |
LookupError |
制定了未知编码 |
UnicodeDecodeError |
读取文件时解码错误 |
读取文本文件
打开一个文本文件后, 可以通过 read()
函数读取文件的内容
1 | # 参数变量 |
通过以上这些函数, 可以实现对文本的多种读取方式:
1 | # 一次性读取整个文件内容 |
文本的写入也很简单, 使用 write()
函数即可, 不再赘述.
JSON 处理
使用 json
模块, 可以实现JSON格式数据的处理.
1 | # JSON 文件 <- -> Python 对象 (常为 dict) |
Python-100-Day ③ 常用/内置模块