Skip to content

Commit 4afbd81

Browse files
First submission
1 parent 7b43b6e commit 4afbd81

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

90 files changed

+3334
-0
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
*.exe
2+
3+
.idea/
4+
__pycache__/

A1-分数统计/A1-screenshot.png

28.5 KB
Loading

A1-分数统计/README.md

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# A1-分数统计
2+
A1题。
3+
4+
## 题目描述
5+
分数统计(10)
6+
7+
要求:
8+
* 输入某班级学生的姓名、分数;
9+
* 对(1)的分数进行降序排列并输出;
10+
* 具有输入输出界面。
11+
12+
## 如何使用
13+
### 方法一、使用release版
14+
在项目的[release](https://github.com/Pragmatism0220/AppDesign/releases)界面下载对应的最新的release版本,然后直接双击运行即可。
15+
16+
### 方法二、源码运行
17+
首先利用git克隆该项目到本地:
18+
```shell
19+
git clone https://github.com/Pragmatism0220/AppDesign.git
20+
```
21+
克隆之后,所对应的每个文件夹都是一个项目;先进入该项目,之后在确保已经安装Python3的情况下,安装相应的依赖,使用命令:
22+
```shell
23+
pip install -r requirements.txt
24+
```
25+
如果你的默认Python版本不是3的话,你应该使用`pip3`代替`pip`
26+
27+
然后使用命令:
28+
```shell
29+
python app.py
30+
```
31+
同样地,如果你的默认Python版本不是3的话,你应该使用`python3`代替`python`
32+
33+
![展示图1](./A1-screenshot.png)
34+
35+
之后,尽情享受吧!
36+
37+
功能:
38+
* **增加**:点击后会随机增加一行数据。数据来源由[Faker](https://github.com/joke2k/faker)开源库提供,非常感谢!
39+
* **删除**:删除掉选中的行(复选框选择)。
40+
* **禁止编辑**:表格默认是可以编辑、更改的。按下该按钮后表格将变为“只读”模式。
41+
* **选择整行**:默认是点击单个单元格,则选择该单元格。该按钮使得选择的单位成为“按行选择”,按下后则整行均被选中。
42+
* **禁止选多行**:默认允许同时选择多行。按下该按钮后则不能同时选择多行。
43+
* **以分数排序**:点击后将按`分数`排序,升序或降序轮换。同时,点击表头也可以快速进行排序。
44+
* **颜色交替**:使得单元格的背景色交替,更为美观。
45+
46+
## 一些细节
47+
项目分为两个文件:`app.py``UI.py`
48+
49+
`app.py`是主控脚本,负责调用`UI.py`,本身不涉及任何实现;`UI.py`是前端和后端的集成,由类和类方法实现。对于更详细的踩坑过程,可以访问[我的博客](https://pragmatism0220.cf/)~~(随缘更新)~~~~由于一些特殊的原因国内访问可能会比较慢。~~
50+
51+
哦对了,由于我将图标文件以字节的形式硬编码到了源代码中,因此源代码中的个别行可能会非常长。在Pycharm中进行开发时,Pycharm会强制进行换行:
52+
```
53+
This document contains very long lines. Soft wraps were forcibly enabled to improve editor performance.
54+
```
55+
~~对没错,这是个feature。~~
56+
57+
附上解决方法:
58+
59+
在Pycharm上方工具栏中点击`Help`,然后点击`Edit Custom Properties...`,打开(没有则创建)`idea.properties`文件,强行修改自动换行的阈值。在文件中键入:
60+
```
61+
editor.soft.wrap.force.limit=500000
62+
```
63+
也就是指定一个较大的数字。保存后,重启Pycharm即可。请注意,编辑器可能会因此变得很慢。默认限制值为10000。
64+
65+
## 已知问题
66+
暂时未发现新的问题。欢迎提issue。
67+
68+
## 作者
69+
一个学生,一个宅男。
70+
71+
* **联系方式**
72+
* 博客: https://pragmatism0220.cf/
73+
* 电子邮件: pragmatism0220@gmail.com
74+
* 微博: [@保護者_Pragmatism0220](https://weibo.com/u/7341561133)
75+
* 推特: [@Pragmatism_0220](https://twitter.com/Pragmatism_0220)
76+
77+
## 开源许可证
78+
[Mozilla Public License 2.0](https://github.com/Pragmatism0220/AppDesign/blob/master/LICENSE)

A1-分数统计/UI.py

Lines changed: 210 additions & 0 deletions
Large diffs are not rendered by default.

A1-分数统计/app.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import sys
2+
import UI
3+
from PyQt5.QtWidgets import QApplication
4+
5+
6+
if __name__ == '__main__':
7+
app = QApplication(sys.argv)
8+
app.setApplicationName(u"分数统计")
9+
ui = UI.UI()
10+
sys.exit(app.exec_())

A1-分数统计/grade.ico

264 KB
Binary file not shown.

A1-分数统计/requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Faker==4.1.0
2+
PyQt5==5.15.0

A2-打字程序/A2-screenshot-1.png

24.3 KB
Loading

A2-打字程序/A2-screenshot-2.png

43 KB
Loading

A2-打字程序/README.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# A2-打字程序
2+
A2题。
3+
4+
## 题目描述
5+
分数统计(10)
6+
7+
要求:
8+
* 随即产生一字符串,每次产生的字符串内容、长度都不同;
9+
* 根据(1)的结果,输入字符串,判断输入是否正确,输出正确率;
10+
* 具有输入输出界面。
11+
12+
13+
## 如何使用
14+
### 方法一、使用release版
15+
在项目的[release](https://github.com/Pragmatism0220/AppDesign/releases)界面下载对应的最新的release版本,然后直接双击运行即可。
16+
17+
### 方法二、源码运行
18+
首先利用git克隆该项目到本地:
19+
```shell
20+
git clone https://github.com/Pragmatism0220/AppDesign.git
21+
```
22+
克隆之后,所对应的每个文件夹都是一个项目;先进入该项目,之后在确保已经安装Python3的情况下,安装相应的依赖,使用命令:
23+
```shell
24+
pip install -r requirements.txt
25+
```
26+
如果你的默认Python版本不是3的话,你应该使用`pip3`代替`pip`
27+
28+
然后使用命令:
29+
```shell
30+
python app.py
31+
```
32+
同样地,如果你的默认Python版本不是3的话,你应该使用`python3`代替`python`
33+
34+
![展示图1](./A2-screenshot-1.png)
35+
36+
![展示图2](./A2-screenshot-2.png)
37+
之后,尽情享受吧!
38+
39+
功能:
40+
* **长度最小值**:生成的字符串长度最小值。
41+
* **长度最大值**:生成的字符串长度最小值。
42+
* **复选框**:决定生成的字符串中包含哪些字符。如果都不选,则默认全选。
43+
* **输出结果**:由5种“字符串相似度匹配算法”计算得到权威的正确率。
44+
45+
## 一些细节
46+
项目分为两个文件:`app.py``UI.py`
47+
48+
`app.py`是主控脚本,负责调用`UI.py`,本身不涉及任何实现;`UI.py`是前端和后端的集成,由类和类方法实现。对于更详细的踩坑过程,可以访问[我的博客](https://pragmatism0220.cf/)~~(随缘更新)~~~~由于一些特殊的原因国内访问可能会比较慢。~~
49+
50+
哦对了,由于我将图标文件以字节的形式硬编码到了源代码中,因此源代码中的个别行可能会非常长。在Pycharm中进行开发时,Pycharm会强制进行换行:
51+
```
52+
This document contains very long lines. Soft wraps were forcibly enabled to improve editor performance.
53+
```
54+
~~对没错,这是个feature。~~
55+
56+
附上解决方法:
57+
58+
在Pycharm上方工具栏中点击`Help`,然后点击`Edit Custom Properties...`,打开(没有则创建)`idea.properties`文件,强行修改自动换行的阈值。在文件中键入:
59+
```
60+
editor.soft.wrap.force.limit=500000
61+
```
62+
也就是指定一个较大的数字。保存后,重启Pycharm即可。请注意,编辑器可能会因此变得很慢。默认限制值为10000。
63+
64+
## 已知问题
65+
暂时未发现新的问题。欢迎提issue。
66+
67+
## 作者
68+
一个学生,一个宅男。
69+
70+
* **联系方式**
71+
* 博客: https://pragmatism0220.cf/
72+
* 电子邮件: pragmatism0220@gmail.com
73+
* 微博: [@保護者_Pragmatism0220](https://weibo.com/u/7341561133)
74+
* 推特: [@Pragmatism_0220](https://twitter.com/Pragmatism_0220)
75+
76+
## 开源许可证
77+
[Mozilla Public License 2.0](https://github.com/Pragmatism0220/AppDesign/blob/master/LICENSE)

A2-打字程序/UI.py

Lines changed: 276 additions & 0 deletions
Large diffs are not rendered by default.

A2-打字程序/app.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import sys
2+
import UI
3+
from PyQt5.QtWidgets import QApplication
4+
5+
6+
if __name__ == '__main__':
7+
app = QApplication(sys.argv)
8+
app.setApplicationName(u"打字程序")
9+
ui = UI.UI()
10+
sys.exit(app.exec_())

A2-打字程序/requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
PyQt5==5.15.0
2+
python_Levenshtein==0.12.0

A2-打字程序/type.ico

264 KB
Binary file not shown.
13 KB
Loading
22 KB
Loading
117 KB
Loading

A3-文本编辑器/README.md

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# A3-文本编辑器
2+
A3题。
3+
4+
## 题目描述
5+
分数统计(10)
6+
7+
要求:
8+
* 编辑文本;
9+
* 保存、打开指定位置的文本文件;
10+
* 具有输入输出界面。
11+
12+
13+
## 如何使用
14+
### 方法一、使用release版
15+
在项目的[release](https://github.com/Pragmatism0220/AppDesign/releases)界面下载对应的最新的release版本,然后直接双击运行即可。
16+
17+
### 方法二、源码运行
18+
首先利用git克隆该项目到本地:
19+
```shell
20+
git clone https://github.com/Pragmatism0220/AppDesign.git
21+
```
22+
克隆之后,所对应的每个文件夹都是一个项目;先进入该项目,之后在确保已经安装Python3的情况下,安装相应的依赖,使用命令:
23+
```shell
24+
pip install -r requirements.txt
25+
```
26+
如果你的默认Python版本不是3的话,你应该使用`pip3`代替`pip`
27+
28+
然后使用命令:
29+
```shell
30+
python app.py
31+
```
32+
同样地,如果你的默认Python版本不是3的话,你应该使用`python3`代替`python`
33+
34+
![展示图1](./A3-screenshot-1.png)
35+
36+
![展示图2](./A3-screenshot-2.png)
37+
38+
![展示图3](./A3-screenshot-3.png)
39+
之后,尽情享受吧!
40+
41+
功能:
42+
* **文件**:支持`打开``保存``另存为``打印`
43+
* **编辑**:支持`撤销``重做``剪切``复制``粘贴``全选``自动换行`
44+
* **格式**:支持`加粗``倾斜``下划线``左对齐``居中``右对齐``两端对齐`
45+
* **字体**:支持电脑中安装的所有字体。`字号`可以调节。
46+
47+
## 一些细节
48+
项目分为三个文件:`app.py``UI.py``images.py`。其中`images.py`里是图标的base64编码信息。
49+
50+
`app.py`是主控脚本,负责调用`UI.py`,本身不涉及任何实现;`UI.py`是前端和后端的集成,由类和类方法实现。对于更详细的踩坑过程,可以访问[我的博客](https://pragmatism0220.cf/)~~(随缘更新)~~~~由于一些特殊的原因国内访问可能会比较慢。~~
51+
52+
哦对了,由于我将图标文件以字节的形式硬编码到了源代码中,因此源代码中的个别行可能会非常长。在Pycharm中进行开发时,Pycharm会强制进行换行:
53+
```
54+
This document contains very long lines. Soft wraps were forcibly enabled to improve editor performance.
55+
```
56+
~~对没错,这是个feature。~~
57+
58+
附上解决方法:
59+
60+
在Pycharm上方工具栏中点击`Help`,然后点击`Edit Custom Properties...`,打开(没有则创建)`idea.properties`文件,强行修改自动换行的阈值。在文件中键入:
61+
```
62+
editor.soft.wrap.force.limit=500000
63+
```
64+
也就是指定一个较大的数字。保存后,重启Pycharm即可。请注意,编辑器可能会因此变得很慢。默认限制值为10000。
65+
66+
## 已知问题
67+
暂时未发现新的问题。欢迎提issue。
68+
69+
## 作者
70+
一个学生,一个宅男。
71+
72+
* **联系方式**
73+
* 博客: https://pragmatism0220.cf/
74+
* 电子邮件: pragmatism0220@gmail.com
75+
* 微博: [@保護者_Pragmatism0220](https://weibo.com/u/7341561133)
76+
* 推特: [@Pragmatism_0220](https://twitter.com/Pragmatism_0220)
77+
78+
## 开源许可证
79+
[Mozilla Public License 2.0](https://github.com/Pragmatism0220/AppDesign/blob/master/LICENSE)

A3-文本编辑器/UI.py

Lines changed: 386 additions & 0 deletions
Large diffs are not rendered by default.

A3-文本编辑器/app.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import sys
2+
import UI
3+
from PyQt5.QtWidgets import QApplication
4+
5+
6+
if __name__ == '__main__':
7+
app = QApplication(sys.argv)
8+
app.setApplicationName(u"文本编辑器")
9+
ui = UI.UI()
10+
sys.exit(app.exec_())

0 commit comments

Comments
 (0)