python部落格園 python 模擬部落格園系統

2021-10-11 11:59:51 字數 1977 閱讀 5094

作業:用**模擬系統。

專案分析:

一.首先程式啟動,頁面顯示下面5內容供使用者選擇:

1.請登入

2.請註冊

3.進入文章頁面

5.進入日記頁面

6.進入收藏頁面

7.登出賬號

8.退出整個程式

二.必須實現的功能:

1.註冊功能要求:

a.使用者名稱、密碼要記錄在檔案中。

b.使用者名稱要求:只能含有字母或者數字不能含有特殊字元並且確保使用者名稱唯一。

c.密碼要求:長度要在6~14個字元之間。

d.超過三次登入還未成功,則退出整個程式。

2.登入功能要求:

a.使用者輸入使用者名稱、密碼進行登入驗證。

b.登入成功之後,才可以訪問3~7選項,如果沒有登入或者登入不成功時訪問3~7選項,不允許訪問,讓其先登入。(裝飾器)

b.此時使用者可以選擇:直接寫入內容,還是匯入md檔案。

5.進入日記頁面要求:

提示歡迎xx進入日記頁面。

6.進入收藏頁面要求:

提示歡迎xx進入收藏頁面。

7.登出賬號要求:

不是退出整個程式,而是將已經登入的狀態變成未登入狀態(訪問3~7選項時需要重新登入)。

8.退出整個程式要求:

就是結束整個程式。

status_dict =

with open(register_path, encoding='utf-8') as f:

for line in f:

line_list = line.strip().split('|')

user_dict[line_list[0].strip()] = line_list[1].strip()

return user_dict

def login():

u_dict = get_user_pwd()

count = 1

while count < 4:

username = input('請輸入使用者名稱:').strip()

password = input('請輸入密碼:').strip()

if username in u_dict and password == u_dict[username]:

print('登入成功')

status_dict['username'] = username

status_dict['status'] = true

return true

else:

print('使用者名稱密碼錯誤....重新登入')

count += 1

def register():

pass

def auth(f):

你的裝飾器完成:訪問被裝飾函式之前,寫乙個三次登入認證的功能。

登入成功:讓其訪問被裝飾得函式,登入沒有成功,不讓訪問。

:param f:

:return:

def inner(*args,**kwargs):

'''訪問函式之前的操作,功能'''

if status_dict['status']:

ret = f(*args,**kwargs)

'''訪問函式之後的操作,功能'''

return ret

else:

if login():

ret = f(*args, **kwargs)

return ret

return inner

@auth # article = auth(article)

def article():

@auth

def comment():

@auth

def dariy():

@auth

def collections():

def login_out():

pass

def _quit():

pass

python部落格園 python部落格大全

python技術部落格 egon部落格 檢視密碼 xiaoyuanqujing 666 pycharm 問題搜尋 專案前端 django框架 python orm 基礎知識 多執行緒多程序 指定 f引數容易失敗,多程序要加multiprocessing.freeze support 選擇資料夾 寫入...

流浪的python部落格園 python反射原理

1.反射原理 通過字串的形式匯入模組 import 可以以字串的形式匯入模組。通過字串的形式匯入函式 反射 根據字串去某個物件裡面取東西,可以是字串,函式,數字。根據字串去某個物件裡面判斷是否存在某個東西 根據字串去某個物件裡面設定東西,函式,數字 字串 根據字串去某個物件裡面刪除東西 注意,這裡的...

python 面試題 部落格園 python面試題

1.一行 實現1 100的和 print sum range 1,101 range中的引數是1 i 101 sum是計算引數的和 2.在函式內部改變全域性變數 a 5 def foo1 global a a 4 foo1 print a 3.列出5個python標準庫 time,獲取時間戳,時間等...