Commit 6411875f authored by jackfrued's avatar jackfrued

更正了部分文档和代码

parent 28067bfe
""" """
第一个Python程序 - hello, world! 第一个Python程序 - hello, world!
向伟大的Dennis M. Ritchie先生致敬 向伟大的Dennis M. Ritchie先生致敬
...@@ -9,7 +8,6 @@ Date: 2018-02-26 ...@@ -9,7 +8,6 @@ Date: 2018-02-26
请将该文件命名为hello.py并在终端中通过下面的命令运行它 请将该文件命名为hello.py并在终端中通过下面的命令运行它
python hello.py python hello.py
""" """
print('hello, world!') print('hello, world!')
......
""" """
将华氏温度转换为摄氏温度 将华氏温度转换为摄氏温度
F = 1.8C + 32 F = 1.8C + 32
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
f = float(input('请输入华氏温度: ')) f = float(input('请输入华氏温度: '))
......
""" """
输入半径计算圆的周长和面积 输入半径计算圆的周长和面积
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
import math import math
......
""" """
输入年份 如果是闰年输出True 否则输出False 输入年份 如果是闰年输出True 否则输出False
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
year = int(input('请输入年份: ')) year = int(input('请输入年份: '))
......
""" """
运算符的使用 运算符的使用
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = 5 a = 5
......
""" """
字符串常用操作 字符串常用操作
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
str1 = 'hello, world!' str1 = 'hello, world!'
......
""" """
使用变量保存数据并进行操作 使用变量保存数据并进行操作
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = 321 a = 321
......
""" """
将input函数输入的数据保存在变量中并进行操作 将input函数输入的数据保存在变量中并进行操作
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = int(input('a = ')) a = int(input('a = '))
......
""" """
格式化输出 格式化输出
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = int(input('a = ')) a = int(input('a = '))
......
""" """
检查变量的类型 检查变量的类型
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = 100 a = 100
......
""" """
类型转换 类型转换
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-27 Date: 2018-02-27
""" """
a = 100 a = 100
......
""" """
英制单位英寸和公制单位厘米互换 英制单位英寸和公制单位厘米互换
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
value = float(input('请输入长度: ')) value = float(input('请输入长度: '))
......
""" """
百分制成绩转等级制成绩 百分制成绩转等级制成绩
90分以上 --> A 90分以上 --> A
80分~89分 --> B 80分~89分 --> B
...@@ -10,7 +9,6 @@ ...@@ -10,7 +9,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
score = float(input('请输入成绩: ')) score = float(input('请输入成绩: '))
......
""" """
分段函数求值 分段函数求值
3x - 5 (x > 1) 3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1) f(x) = x + 2 (-1 <= x <= 1)
...@@ -8,7 +7,6 @@ f(x) = x + 2 (-1 <= x <= 1) ...@@ -8,7 +7,6 @@ f(x) = x + 2 (-1 <= x <= 1)
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
x = float(input('x = ')) x = float(input('x = '))
......
""" """
掷骰子决定做什么事情 掷骰子决定做什么事情
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
from random import randint from random import randint
......
""" """
输入月收入和五险一金计算个人所得税 输入月收入和五险一金计算个人所得税
说明:写这段代码时新的个人所得税计算方式还没有颁布
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
salary = float(input('本月收入: ')) salary = float(input('本月收入: '))
......
""" """
判断输入的边长能否构成三角形 判断输入的边长能否构成三角形
如果能则计算出三角形的周长和面积 如果能则计算出三角形的周长和面积
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
import math import math
......
""" """
用户身份验证 用户身份验证
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-02-28 Date: 2018-02-28
""" """
# import getpass # import getpass
......
""" """
用for循环实现1~100求和 用for循环实现1~100求和
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
sum = 0 sum = 0
......
""" """
用for循环实现1~100之间的偶数求和 用for循环实现1~100之间的偶数求和
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
sum = 0 sum = 0
......
""" """
输入非负整数n计算n! 输入非负整数n计算n!
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
n = int(input('n = ')) n = int(input('n = '))
......
""" """
输入一个正整数判断它是不是素数 输入一个正整数判断它是不是素数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
from math import sqrt from math import sqrt
......
""" """
输入两个正整数计算最大公约数和最小公倍数 输入两个正整数计算最大公约数和最小公倍数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
x = int(input('x = ')) x = int(input('x = '))
......
""" """
打印各种三角形图案 打印各种三角形图案
* *
...@@ -23,7 +22,6 @@ ...@@ -23,7 +22,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
row = int(input('请输入行数: ')) row = int(input('请输入行数: '))
......
""" """
用while循环实现1~100求和 用while循环实现1~100求和
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
sum = 0 sum = 0
......
""" """
用while循环实现1~100之间的偶数求和 用while循环实现1~100之间的偶数求和
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-01 Date: 2018-03-01
""" """
sum = 0 sum = 0
......
""" """
求解《百钱百鸡》问题 求解《百钱百鸡》问题
1只公鸡5元 1只母鸡3元 3只小鸡1元 用100元买100只鸡 1只公鸡5元 1只母鸡3元 3只小鸡1元 用100元买100只鸡
问公鸡 母鸡 小鸡各有多少只 问公鸡 母鸡 小鸡各有多少只
...@@ -7,7 +6,6 @@ ...@@ -7,7 +6,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
for x in range(0, 20): for x in range(0, 20):
......
""" """
Craps赌博游戏 Craps赌博游戏
玩家摇两颗色子 如果第一次摇出7点或11点 玩家胜 玩家摇两颗色子 如果第一次摇出7点或11点 玩家胜
如果摇出2点 3点 12点 庄家胜 其他情况游戏继续 如果摇出2点 3点 12点 庄家胜 其他情况游戏继续
...@@ -11,7 +10,6 @@ Craps赌博游戏 ...@@ -11,7 +10,6 @@ Craps赌博游戏
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
from random import randint from random import randint
......
""" """
输出斐波那契数列的前20个数 输出斐波那契数列的前20个数
1 1 2 3 5 8 13 21 ... 1 1 2 3 5 8 13 21 ...
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
a = 0 a = 0
......
""" """
猜数字游戏 猜数字游戏
计算机出一个1~100之间的随机数由人来猜 计算机出一个1~100之间的随机数由人来猜
计算机根据人猜的数字分别给出提示大一点/小一点/猜对了 计算机根据人猜的数字分别给出提示大一点/小一点/猜对了
...@@ -7,7 +6,6 @@ ...@@ -7,7 +6,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
import random import random
......
""" """
找出100~999之间的所有水仙花数 找出100~999之间的所有水仙花数
水仙花数是各位立方和等于这个数本身的数 水仙花数是各位立方和等于这个数本身的数
如: 153 = 1**3 + 5**3 + 3**3 如: 153 = 1**3 + 5**3 + 3**3
...@@ -7,7 +6,6 @@ ...@@ -7,7 +6,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
for num in range(100, 1000): for num in range(100, 1000):
......
""" """
判断输入的正整数是不是回文数 判断输入的正整数是不是回文数
回文数是指将一个正整数从左往右排列和从右往左排列值一样的数 回文数是指将一个正整数从左往右排列和从右往左排列值一样的数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
num = int(input('请输入一个正整数: ')) num = int(input('请输入一个正整数: '))
......
""" """
找出1~9999之间的所有完美数 找出1~9999之间的所有完美数
完美数是除自身外其他所有因子的和正好等于这个数本身的数 完美数是除自身外其他所有因子的和正好等于这个数本身的数
例如: 6 = 1 + 2 + 3, 28 = 1 + 2 + 4 + 7 + 14 例如: 6 = 1 + 2 + 3, 28 = 1 + 2 + 4 + 7 + 14
...@@ -7,7 +6,6 @@ ...@@ -7,7 +6,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
import time import time
import math import math
......
""" """
输出2~99之间的素数 输出2~99之间的素数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
import math import math
......
""" """
输出乘法口诀表(九九表) 输出乘法口诀表(九九表)
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-02 Date: 2018-03-02
""" """
for i in range(1, 10): for i in range(1, 10):
......
""" """
函数的定义和使用 - 计算组合数C(7,3) 函数的定义和使用 - 计算组合数C(7,3)
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
......
""" """
函数的定义和使用 - 求最大公约数和最小公倍数 函数的定义和使用 - 求最大公约数和最小公倍数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
......
""" """
Python的内置函数 Python的内置函数
- 数学相关: abs / divmod / pow / round / min / max / sum - 数学相关: abs / divmod / pow / round / min / max / sum
- 序列相关: len / range / next / filter / map / sorted / slice / reversed - 序列相关: len / range / next / filter / map / sorted / slice / reversed
- 类型转换: chr / ord / str / bool / int / float / complex / bin / oct / hex - 类型转换: chr / ord / str / bool / int / float / complex / bin / oct / hex
- 数据结构: dict / list / set / tuple - 数据结构: dict / list / set / tuple
- 其他函数: all / any / id / input / open / print / type - 其他函数: all / any / id / input / open / print / type
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
......
""" """
Python常用模块 Python常用模块
- 运行时服务相关模块: copy / pickle / sys / ... - 运行时服务相关模块: copy / pickle / sys / ...
- 数学相关模块: decimal / math / random / ... - 数学相关模块: decimal / math / random / ...
- 字符串处理模块: codecs / re / ... - 字符串处理模块: codecs / re / ...
- 文件处理相关模块: shutil / gzip / ... - 文件处理相关模块: shutil / gzip / ...
- 操作系统服务相关模块: datetime / os / time / logging / io / ... - 操作系统服务相关模块: datetime / os / time / logging / io / ...
- 进程和线程相关模块: multiprocessing / threading / queue - 进程和线程相关模块: multiprocessing / threading / queue
- 网络应用相关模块: ftplib / http / smtplib / urllib / ... - 网络应用相关模块: ftplib / http / smtplib / urllib / ...
- Web编程相关模块: cgi / webbrowser - Web编程相关模块: cgi / webbrowser
- 数据处理和编码模块: base64 / csv / html.parser / json / xml / ... - 数据处理和编码模块: base64 / csv / html.parser / json / xml / ...
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
import time import time
......
""" """
函数的参数 函数的参数
- 默认参数 - 位置参数
- 可变参数 - 可变参数
- 关键字参数 - 关键字参数
- 命名关键字参数 - 命名关键字参数
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
......
""" """
作用域问题 作用域问题
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-05 Date: 2018-03-05
""" """
......
...@@ -350,4 +350,3 @@ def main(): ...@@ -350,4 +350,3 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
main() main()
``` ```
""" """
输入学生考试成绩计算平均分 输入学生考试成绩计算平均分
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
定义和使用字典 定义和使用字典
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
字典的常用操作 字典的常用操作
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
生成斐波拉切数列 生成斐波拉切数列
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
找出列表中最大或最小的元素 找出列表中最大或最小的元素
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
定义和使用列表 定义和使用列表
- 用下标访问元素 - 用下标访问元素
- 添加元素 - 添加元素
- 删除元素 - 删除元素
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
列表常用操作 列表常用操作
- 列表连接 - 列表连接
- 获取长度 - 获取长度
- 遍历列表 - 遍历列表
- 列表切片 - 列表切片
- 列表排序 - 列表排序
- 列表反转 - 列表反转
- 查找元素 - 查找元素
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
生成列表 生成列表
- 用range创建数字列表 - 用range创建数字列表
- 生成表达式 - 生成表达式
- 生成器 - 生成器
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
双色球随机选号程序 双色球随机选号程序
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
from random import randrange, randint, sample from random import randrange, randint, sample
......
""" """
输入学生考试成绩计算平均分 输入学生考试成绩计算平均分
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
import os import os
......
""" """
学生考试成绩表 学生考试成绩表
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
定义和使用集合 定义和使用集合
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
集合的常用操作 集合的常用操作
- 交集 - 交集
- 并集 - 并集
- 差集 - 差集
- 子集 - 子集
- 超集 - 超集
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
井字棋游戏 井字棋游戏
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
import os import os
......
""" """
元组的定义和使用 元组的定义和使用
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
输出10行的杨辉三角 - 二项式的n次方展开系数 输出10行的杨辉三角 - 二项式的n次方展开系数
1 1
1 1 1 1
...@@ -12,7 +11,6 @@ ...@@ -12,7 +11,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-06 Date: 2018-03-06
""" """
......
""" """
练习 练习
修一个游泳池 半径(以米为单位)在程序运行时输入 游泳池外修一条3米宽的过道 修一个游泳池 半径(以米为单位)在程序运行时输入 游泳池外修一条3米宽的过道
过道的外侧修一圈围墙 已知过道的造价为25元每平米 围墙的造价为32.5元每米 过道的外侧修一圈围墙 已知过道的造价为25元每平米 围墙的造价为32.5元每米
...@@ -8,7 +7,6 @@ ...@@ -8,7 +7,6 @@
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
import math import math
......
""" """
定义和使用时钟类 定义和使用时钟类
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
import time import time
......
""" """
面向对象版本的猜数字游戏 面向对象版本的猜数字游戏
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
from random import randint from random import randint
......
""" """
另一种创建类的方式 另一种创建类的方式
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
......
""" """
定义和使用矩形类 定义和使用矩形类
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
......
""" """
定义和使用学生类 定义和使用学生类
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-08 Date: 2018-03-08
""" """
......
""" """
对象之间的关联关系 对象之间的关联关系
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
from math import sqrt from math import sqrt
......
""" """
属性的使用 属性的使用
- 访问器/修改器/删除器 - 访问器/修改器/删除器
- 使用__slots__对属性加以限制 - 使用__slots__对属性加以限制
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
......
""" """
属性的使用 属性的使用
- 使用已有方法定义访问器/修改器/删除器 - 使用已有方法定义访问器/修改器/删除器
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
......
""" """
对象之间的依赖关系和运算符重载 对象之间的依赖关系和运算符重载
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
......
""" """
多重继承 多重继承
- 菱形继承(钻石继承) - 菱形继承(钻石继承)
- C3算法(替代DFS的算法) - C3算法(替代DFS的算法)
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
......
""" """
抽象类 / 方法重写 / 多态 抽象类 / 方法重写 / 多态
实现一个工资结算系统 公司有三种类型的员工 实现一个工资结算系统 公司有三种类型的员工
- 部门经理固定月薪12000元/月 - 部门经理固定月薪12000元/月
- 程序员按本月工作小时数每小时100元 - 程序员按本月工作小时数每小时100元
- 销售员1500元/月的底薪加上本月销售额5%的提成 - 销售员1500元/月的底薪加上本月销售额5%的提成
输入员工的信息 输出每位员工的月薪信息 输入员工的信息 输出每位员工的月薪信息
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
from abc import ABCMeta, abstractmethod from abc import ABCMeta, abstractmethod
......
""" """
多重继承 多重继承
- 通过多重继承可以给一个类的对象具备多方面的能力 - 通过多重继承可以给一个类的对象具备多方面的能力
- 这样在设计类的时候可以避免设计太多层次的复杂的继承关系 - 这样在设计类的时候可以避免设计太多层次的复杂的继承关系
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
......
""" """
运算符重载 - 自定义分数类 运算符重载 - 自定义分数类
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
from math import gcd from math import gcd
......
""" """
继承的应用 继承的应用
- 抽象类 - 抽象类
- 抽象方法 - 抽象方法
- 方法重写 - 方法重写
- 多态 - 多态
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
from abc import ABCMeta, abstractmethod from abc import ABCMeta, abstractmethod
......
""" """
实例方法和类方法的应用 实例方法和类方法的应用
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-12 Date: 2018-03-12
""" """
from math import sqrt from math import sqrt
......
""" """
使用tkinter创建GUI 使用tkinter创建GUI
- 顶层窗口 - 顶层窗口
- 控件 - 控件
- 布局 - 布局
- 事件回调 - 事件回调
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-14 Date: 2018-03-14
""" """
import tkinter import tkinter
......
""" """
使用tkinter创建GUI 使用tkinter创建GUI
- 使用画布绘图 - 使用画布绘图
- 处理鼠标事件 - 处理鼠标事件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-14 Date: 2018-03-14
""" """
import tkinter import tkinter
......
""" """
使用tkinter创建GUI 使用tkinter创建GUI
- 在窗口上制作动画 - 在窗口上制作动画
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
......
""" """
读取CSV文件 读取CSV文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import csv import csv
......
""" """
写入CSV文件 写入CSV文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import csv import csv
......
""" """
异常机制 - 处理程序在运行时可能发生的状态 异常机制 - 处理程序在运行时可能发生的状态
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
input_again = True input_again = True
......
""" """
异常机制 - 处理程序在运行时可能发生的状态 异常机制 - 处理程序在运行时可能发生的状态
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
input_again = True input_again = True
......
""" """
异常机制 - 处理程序在运行时可能发生的状态 异常机制 - 处理程序在运行时可能发生的状态
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import time import time
......
""" """
引发异常和异常栈 引发异常和异常栈
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
......
""" """
从文本文件中读取数据 从文本文件中读取数据
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import time import time
......
""" """
读取圆周率文件判断其中是否包含自己的生日 读取圆周率文件判断其中是否包含自己的生日
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
birth = input('请输入你的生日: ') birth = input('请输入你的生日: ')
......
""" """
写文本文件 写文本文件
将100以内的素数写入到文件中 将100以内的素数写入到文件中
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
from math import sqrt from math import sqrt
......
""" """
读写二进制文件 读写二进制文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import base64 import base64
with open('mm.jpg', 'rb') as f: with open('mm.jpg', 'rb') as f:
......
""" """
读取JSON数据 读取JSON数据
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import json import json
......
""" """
写入JSON文件 写入JSON文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-13 Date: 2018-03-13
""" """
import json import json
......
...@@ -5,3 +5,28 @@ ...@@ -5,3 +5,28 @@
我如果爱你 我如果爱你
绝不学痴情的鸟儿 绝不学痴情的鸟儿
为绿荫重复单调的歌曲 为绿荫重复单调的歌曲
也不止像泉源
常年送来清凉的慰藉
也不止像险峰
增加你的高度 衬托你的威仪
甚至日光 甚至春雨
不 这些都还不够
我必须是你近旁的一株木棉
作为树的形象和你站在一起
根 紧握在地下
叶 相触在云里
每一阵风过
我们都互相致意
但没有人 听懂我们的言语
你有你的铜枝铁干
像刀 像剑 也像戟;
我有我红硕的花朵
像沉重的叹息 又像英勇的火炬
我们分担寒潮、风雷、霹雳
我们共享雾霭、流岚、虹霓
仿佛永远分离 却又终身相依
这才是伟大的爱情
坚贞就在这里
爱 不仅爱你伟岸的身躯
也爱你坚持的位置 足下的土地
\ No newline at end of file
""" """
字符串常用操作 字符串常用操作
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-19 Date: 2018-03-19
""" """
import pyperclip import pyperclip
......
""" """
字符串常用操作 - 实现字符串倒转的方法 字符串常用操作 - 实现字符串倒转的方法
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-19 Date: 2018-03-19
""" """
from io import StringIO from io import StringIO
...@@ -59,4 +57,3 @@ if __name__ == '__main__': ...@@ -59,4 +57,3 @@ if __name__ == '__main__':
print(str) print(str)
print(reverse_str5(str)) print(reverse_str5(str))
print(str) print(str)
# 提醒学生注意这是一个面试题: 写出你能想到的实现字符串倒转的代码
""" """
验证输入用户名和QQ号是否有效并给出对应的提示信息 验证输入用户名和QQ号是否有效并给出对应的提示信息
要求: 要求:
用户名必须由字母、数字或下划线构成且长度在6~20个字符之间 用户名必须由字母、数字或下划线构成且长度在6~20个字符之间
QQ号是5~12的数字且首位不能为0 QQ号是5~12的数字且首位不能为0
""" """
import re import re
...@@ -26,4 +24,3 @@ def main(): ...@@ -26,4 +24,3 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
main() main()
"""
不良内容过滤
"""
import re import re
def main(): def main():
sentence = '你丫是傻叉吗? 我操你大爷的. Fuck you.' sentence = '你丫是傻叉吗? 我操你大爷的. Fuck you.'
purified = re.sub('[操肏艹草曹]|fuck|shit|傻[比屄逼叉缺吊屌]|煞笔', purified = re.sub('[操肏艹]|fuck|shit|傻[比屄逼叉缺吊屌]|煞笔',
'*', sentence, flags=re.IGNORECASE) '*', sentence, flags=re.IGNORECASE)
print(purified) print(purified)
......
""" """
异步I/O操作 - asyncio模块 异步I/O操作 - asyncio模块
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
import asyncio import asyncio
......
""" """
异步I/O操作 - async和await 异步I/O操作 - async和await
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
import asyncio import asyncio
import threading import threading
......
""" """
异步I/O操作 - asyncio模块 异步I/O操作 - asyncio模块
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
import asyncio import asyncio
......
""" """
使用协程 - 模拟快递中心派发快递 使用协程 - 模拟快递中心派发快递
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
from time import sleep from time import sleep
......
""" """
使用协程 - 查看协程的状态 使用协程 - 查看协程的状态
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
from time import sleep from time import sleep
......
""" """
生成器 - 生成器语法 生成器 - 生成器语法
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
seq = [x * x for x in range(10)] seq = [x * x for x in range(10)]
......
""" """
生成器 - 使用yield关键字 生成器 - 使用yield关键字
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-21 Date: 2018-03-21
""" """
......
""" """
使用Process类创建多个进程 使用Process类创建多个进程
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
# 通过下面程序的执行结果可以证实 父进程在创建子进程时复制了进程及其数据结构 # 通过下面程序的执行结果可以证实 父进程在创建子进程时复制了进程及其数据结构
......
""" """
实现进程间的通信 实现进程间的通信
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
import multiprocessing import multiprocessing
import os import os
......
""" """
创建进程调用其他程序 创建进程调用其他程序
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
import subprocess import subprocess
......
""" """
使用多线程的情况 - 模拟多个下载任务 使用多线程的情况 - 模拟多个下载任务
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
from random import randint from random import randint
......
""" """
使用多线程的情况 - 模拟多个下载任务 使用多线程的情况 - 模拟多个下载任务
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
from random import randint from random import randint
......
""" """
使用多线程的情况 - 模拟多个下载任务 使用多线程的情况 - 模拟多个下载任务
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
from random import randint from random import randint
......
""" """
使用多线程的情况 - 耗时间的任务在独立的线程中执行 使用多线程的情况 - 耗时间的任务在独立的线程中执行
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
import time import time
......
""" """
多个线程共享数据 - 没有锁的情况 多个线程共享数据 - 没有锁的情况
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
from time import sleep from time import sleep
......
""" """
多个线程共享数据 - 有锁的情况 多个线程共享数据 - 有锁的情况
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
import time import time
......
""" """
不使用多线程的情况 - 模拟多个下载任务 不使用多线程的情况 - 模拟多个下载任务
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
from random import randint from random import randint
......
""" """
不使用多线程的情况 - 耗时间的任务阻塞主事件循环 不使用多线程的情况 - 耗时间的任务阻塞主事件循环
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-20 Date: 2018-03-20
""" """
import time import time
......
""" """
套接字 - 基于TCP协议创建时间服务器 套接字 - 基于TCP协议创建时间服务器
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-22 Date: 2018-03-22
""" """
from socket import * from socket import *
......
""" """
套接字 - 基于TCP协议创建时间客户端 套接字 - 基于TCP协议创建时间客户端
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-22 Date: 2018-03-22
""" """
from socket import * from socket import *
......
""" """
套接字 - 基于UDP协议Echo服务器 套接字 - 基于UDP协议Echo服务器
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-22 Date: 2018-03-22
""" """
from socket import * from socket import *
from time import * from time import *
......
""" """
套接字 - 基于UDP协议创建Echo客户端 套接字 - 基于UDP协议创建Echo客户端
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-22 Date: 2018-03-22
""" """
from socket import * from socket import *
......
""" """
使用socketserver模块创建时间服务器 使用socketserver模块创建时间服务器
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-22 Date: 2018-03-22
""" """
from socketserver import TCPServer, StreamRequestHandler from socketserver import TCPServer, StreamRequestHandler
from time import * from time import *
......
""" """
创建Excel文件 创建Excel文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
from openpyxl import Workbook from openpyxl import Workbook
from openpyxl.worksheet.table import Table, TableStyleInfo from openpyxl.worksheet.table import Table, TableStyleInfo
......
""" """
读取Excel文件 读取Excel文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
from openpyxl import load_workbook from openpyxl import load_workbook
......
""" """
创建PDF文件 创建PDF文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
\ No newline at end of file
import PyPDF2
""" """
读取PDF文件 读取PDF文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
from PyPDF2 import PdfFileReader from PyPDF2 import PdfFileReader
......
""" """
使用pillow操作图像 使用pillow操作图像
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
from PIL import Image from PIL import Image
img = Image.open('./res/guido.jpg') img = Image.open('./res/guido.jpg')
......
""" """
创建Word文件 创建Word文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
\ No newline at end of file
""" """
读取Word文件 读取Word文件
Version: 0.1 Version: 0.1
Author: 骆昊 Author: 骆昊
Date: 2018-03-26 Date: 2018-03-26
""" """
from docx import Document from docx import Document
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment