1、遍歷磁盤
輸入一個路徑,打印當前路徑及子路徑中的所有文件的絕對路徑
import os
from os import path
def ergodic(file_path):
files = os.listdir(file_path)##列出該目錄下的文件
try:##由於有的文件具有權限,無法訪問,程序運行則馬上終止,無法訪問整個磁盤,這裏採用try對異常進行處理。
for f in files:
f = path.join(file_path,f) ##路徑拼接處理
if os.path.isfile(f): ##是文件則輸出
print(os.path.abspath(f))
elif os.path.isdir(f):#文件夾則遞歸
ergodic(f)
except:
pass
file_path = input("請輸入需要遍歷的磁盤:")
if os.path.isdir(file_path):
ergodic(file_path)
else:
print("輸入有誤!")
使用了try 的話就無法在控制檯直接退出了,對異常的處理是跳過。
完整的遍歷了我的J盤。
2、使用作業1的代碼完成磁盤視頻的篩選
import os
from os import path
def ergodic(file_path):
files = os.listdir(file_path)##列出該目錄下的文件
try:##由於有的文件具有權限,無法訪問,程序運行則馬上終止,無法訪問整個磁盤,這裏採用try對異常進行處理。
for f in files:
f2 = path.join(file_path,f) ##路徑拼接處理
if os.path.isfile(f2): ##是文件則判斷爲視頻輸出
f1 = f.split(".")##將是文件的進行分割得到後綴名,不能在for循環剛開始的時候分割
f3 = f1[len(f1)-1]##因爲文件夾無法分割,將會溢出,並且需要分割取最後一個
if f3 == "mp4":
print(f2)
elif os.path.isdir(f2):#文件夾則遞歸
ergodic(f2)
except:
pass
file_path = input("請輸入需要遍歷的磁盤:")
if os.path.isdir(file_path):
ergodic(file_path)
else:
print("輸入有誤!")
找出了J盤中的視頻,打碼是不能讓某老師的名字露出來,不太友好。
3、完成一個登陸註冊案例(密碼加密)
一個還算簡單的註冊,仿照上次的登錄註冊,將存入的內容修改爲加密後的內容。這樣得到了你的庫內密碼也得不到你的真實密碼。
import hashlib
users = []
user_passwd = []##數據庫中獲取到的是加密過的信息,不知道加密過程,也無法獲取真實密碼。
def print_print():
print("----------------------------------")
def user_logon(user,passwd):
if users.count(user) != 0:
print("---------該用戶名已存在!")
else:
users.append(user)##用戶列表
md5 =hashlib.md5(passwd.encode("utf-8"))##進行mad5加密
md5.update("xuhaobo".encode("utf-8"))##更新密碼加入特定的加密內容“xuhaobo”
passwd = md5.hexdigest()##將其轉換爲16進制
dir = {user:passwd}
user_passwd.append(dir)
print(dir)
def user_login(user,passwd):
if users.count(user) == 0:
print("用戶不存在")
else:
md5 =hashlib.md5(passwd.encode("utf-8"))
md5.update("xuhaobo".encode("utf-8"))
passwd = md5.hexdigest()
dir = {user:passwd}
if user_passwd.count(dir) == 0:
print("密碼錯誤!")
else:
print("登錄成功!")
while True:
print("請輸入您的選項:")
print_print()
print("--------1---用戶註冊--------------")
print_print()
print("--------2---用戶登錄--------------")
print_print()
print("--------3---退出------------------")
print_print()
choice1 = int(input("請輸入:"))
if choice1 == 1 :
user = input("請輸入註冊用戶名:")
passwd = input("請輸入密碼:")
user_logon(user,passwd)
elif choice1 == 2:
user = input("請輸入登錄賬號:")
passwd = input("請輸入登錄密碼:")
user_login(user,passwd)
elif choice1 == 3:
break
else:
print("無效輸入!!!")
測試:
代碼僅供參考,權當拋磚引玉,希望能給你帶來一些幫助。