第一题:
1.使用os和os.path以及函数的递归完成:
给出一个路径,遍历当前路径所有的文件及文件夹
打印输出所有的文件(遇到文件输出路径,遇到文件夹继续进文件夹)
代码:
import os
def traverse_path(path):
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.path.join(root, file)
print(file_path)
for dir in dirs:
sub_dir_path = os.path.join(root, dir)
traverse_path(sub_dir_path)
if __name__ == "__main__":
target_path = input("请输入要遍历的路径: ")
traverse_path(target_path)
运行截图:
第二题:
使用加密模块及IO模拟登录功能,要求使用文件模拟数据库存储用户名和密码。
代码:
#自定义异常
class MyException(Exception):
msg = ""
def __init__(self, msg):
self.msg = msg
#模拟数据库中的用户数据
username_mysql = "wangzhaowei"
password_mysql = "111"
def login(username, password):
# 1.用户名是否存在
if username != username_mysql:
#抛出一个自定义的异常
raise MyException("用户名不存在")
# 2.密码是否正确
if password != password_mysql:
raise MyException("密码错误")
# 3.是否登陆成功
return True
if __name__ == '__main__': #程序执行入口 一般用作测试
username = input("username: ")
password = input("password: ")
try:
login(username, password)
except Exception as e:
print(e)
else:
print("登陆成功")