一、文件操作
面向对象编程
一.常用内置模块的使用
2.对文件进行增删改查(古诗.log)
昔人已乘黄鹤去,此地空余黄鹤楼。
黄鹤一去不复返,白云千载空悠悠。
晴川历历汉阳树,芳草萋萋鹦鹉洲。
日暮乡关何处是?烟波江上使人愁。
2.1 查,使用seek(15) 和 read(2)是什么字符
2.2 把第三行的 "芳草萋萋鹦鹉洲" 替换成 "白日依山尽" (编程题)
2.3 删除最后一行 (编程题)
2.4 解释一下替换过程的原理
2.5 追加 “给岁月以文明, 而不是给文明以岁月” (编程题)
2.6 最后一行替换成 "居庙堂之高则忧其民,处江湖之远则忧其君" (编程题)
# 4.文件操作
# 4.1 解释 "w" 与 "wb" 的区别?
# 4.2 read,readline,readlines的区别?
# 4.3 执行f.write()之后,会立刻写入磁盘吗?
# 不会的话,有几种方式能让其写入磁盘中?
二、模块
1.阐述atm的流程和购物车的流程?
二、函数
5.函数
5.1 形参与实参的区别
5.2 位置参数,默认参数,关键字参数,非固定参数的顺序
5.3 装饰器的必备条件是什么?
5.4 默认的返回值是什么?
5.5 什么数据类型可以做实参
5.6 返回值的个数限制
5.7 返回值的类型限制
6.作用域
6.1 什么是函数的作用域 ?
6.2 以下代码的最终结果是什么?
a = 8
b = 10
def outer():
a = 0
b = 1
def inner():
a = 10
b = 11
inner()
outer()
print(a, b)
答案是?
======================
a = [1, 2, 3]
def outer():
a.append(5)
outer()
print(a)
答案是?
======================
# 6.3 创建一个闭包函数需要满足哪几点?
# 6.4 解释一下是否会报错,原因是什么?如何修改使以下例子不报错?
def test():
print(luffy)
luffy = "the king of sea"
def test():
print(luffy)
luffy = "e"
luffy = "the king of sea"
def test():
luffy = "e"
print(luffy)
luffy = "the king of sea"
答案是?
======================
3.写一个装饰器 (编程题)
3.1 编写3个函数,每个函数执行的时间是不一样的
提示: 可以使用time.sleep(2) 让程序 等待 2秒
3.2 编写装饰器,为每个函数加上统计运行时间的功能
3.3 编写装饰器,为函数加上认证功能,要求认证成功后才能执行函数。
3.4 编写装饰器,为多个函数加上认证的功能 (账号密码来源于文件),
要求登录成功一次,后续的函数都无需再输入用户名和密码
注册函数:
1.注册成功后需要把用户名与密码保存到以用户名命名的文件中
2.密码需要通过hashlib模块做md5加密
登录函数
1.需要根据用户的名字获取对应的文件中的用户名、密码,做校验
2.登录成功后,给登录的用户做一个标记
编写函数: 判断传入的数字的大小,并返回大的值
1.用户需要先登录才能使用该函数
登录认证装饰器
1.触发装饰器的执行时,需要判断是否有用户登录,
如有则让被装饰函数正常执行,否则调用登录函数让用户登录