305_python_模块2_os_md5

举报
alexsully 发表于 2022/03/02 00:18:49 2022/03/02
【摘要】 Python内置模块2

md5 模块

import hashlib

data_str = "123456"
obj = hashlib.md5()
obj.update(data_str.encode('utf-8'))

result = obj.hexdigest()

print(result) #e10adc3949ba59abbe56e057f20f883e


DATA_DICT = {}


def md5(data_string):
    salt = "alexsuly".encode("utf-8")   #加盐防止被撞库
    obj = hashlib.md5(salt)
    obj.update(data_string.encode('utf-8'))
    return obj.hexdigest()


def register():
    user = input("用户名:")
    pwd = input("密码:")
    encrypt_pwd = md5(pwd)
    DATA_DICT[user] = encrypt_pwd


def login():
    user = input("用户名:")
    pwd = input("密码:")
    encrypt_pwd = md5(pwd)

    db_pwd = DATA_DICT.get(user)
    if encrypt_pwd == db_pwd:
        print("登录成功")
    else:
        print("登录失败")


if __name__ == '__main__':
    register()


os 模块

import os

# 1. 获取当前脚本绝对路径

abs_path = os.path.abspath(__file__)
print(abs_path)  #F:\codes\PythonCodes\alexp1\models\ostest.py


# 2. 获取当前文件的上级目录
base_path = os.path.dirname( os.path.dirname(abs_path))
print(base_path)  #F:\codes\PythonCodes\alexp1



# 3. 路径拼接 join 文件更名 rename

demo_path = r'F:\codes\PythonCodes\alexp1\demo'

os.rename(os.path.join(demo_path,'1.txt'), os.path.join(demo_path, '11111.txt'))  # 只能更名文件


# 4. 判断路径是否存在

exists = os.path.exists(abs_path)
print(exists)



# 5. 创建文件夹

os.makedirs("路径")
path = os.path.join(base_path, 'xx', 'oo', 'uuuu')   #目录/路径
if not os.path.exists(path):
    os.makedirs(path)


# 6. 是否是文件夹 / 文件
os.path.isdir('file_path')
os.path.isfile('folder_path')

# 7. 删除文件或文件夹
# os.remove("hauban")



# 遍历  os.listdir(),   os.walk()

# 只罗列一级
target_path = r"F:\codes\PythonCodes\alexp1\demo"
# for item in os.listdir(target_path):
#     print(item)
"""
1.txt
2.log
demo_1
"""


# 遍历下面所有目录 且逐层递进, 固定返回一个元祖 包括三个item 该目录,子目录, 该目录下的文件列表
# ('F:\\codes\\PythonCodes\\alexp1\\demo', ['demo_1'], ['1.txt', '2.log']) <class 'tuple'>
for item in os.walk(target_path):
    # print(item, type(item)) #('F:\\codes\\PythonCodes\\alexp1\\demo', ['demo_1'], ['1.txt', '2.log']) <class 'tuple'>
    base_path, folder_path, file_list = item
    for i in file_list:
        if i.endswith('log'):
            abs_path = os.path.join(base_path,i)
            # print(abs_path)   #//F:\codes\PythonCodes\alexp1\demo\2.log

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。