third作業 部落格園登入

2022-05-21 21:48:15 字數 4149 閱讀 2612

1

import time

2 status_dic =

67 flag1 =true

89 def login(*args,**kwargs):

10 i = 0

11while i < 3

:12 username = input('

請輸入使用者名稱:

').strip()

13 password = input('

請輸入密碼:

').strip()

14 with open('

register

',encoding='

utf-8

') as

f1:15

for line in

f1:16 line_list =line.strip().split()

17if username == line_list[0] and password == line_list[1

]:18 print('

登入成功')

19 status_dic['

username

'] =username

20 status_dic['

status

'] =true

21return

true

22else

:23 print('

輸入不正確,請重新輸入,還剩%s機會

' % (2-i))

24if i == 2: return

quit()

25 i += 1

2627

28 def register(*args, **kwargs):

29 flag =true

30while

flag:

31 username = input('

請輸入要註冊的使用者名稱:')

32 f1 = open('

register

',encoding='

utf-8')

33for i in

f1:34

if username in

i:35 print('

使用者名稱重複,請重新輸入')

36f1.close()

37break

38else:39

f1.close()

40 password = input('

請輸入要註冊的密碼:

').strip()

41 f2 = open('

register

', encoding='

utf-8

', mode='a'

)42 f2.write('

\n{}\t{}

'.format(username, password))

43f2.close()

44 print('

恭喜你,註冊成功,已經自動為您登入.....')

45 status_dic['

username

'] =username

46 status_dic['

status

'] =true

47return

true

4849

5051 def inner(*args,**kwargs):

52if status_dic['

status']:

53 ret = func(*args,**kwargs)

54return

ret55

else

:56 print('

請先進行登入')

57if

login():

58 ret = func(*args, **kwargs)

59return

ret60

return

inner

6162

def log_record(func):

63 def inner(*args,**kwargs):

64 struct_time =time.localtime()

65 time_now = time.strftime("

%y-%m-%d %h:%m:%s

", struct_time)

66 with open('

log_func

','a

',encoding='

utf-8

') as

f1:67 f1.write('

使用者:%s 在%s 執行了 %s函式\n

'%(status_dic['

username

'],time_now,func.__name__))

68 ret = func(*args,**kwargs)

69return

ret70

return

inner

7172

73@log_record

74def article():

75 print('

' % status_dic['

username'])

7677

78@log_record

79def diary():

80 print('

歡迎%s訪問日記頁面

' % status_dic['

username'])

8182

83@log_record

84def comment():

85 print('

' % status_dic['

username'])

8687

88@log_record

89def enshrine():

90 print('

歡迎%s訪問收藏頁面

' % status_dic['

username'])

9192

93def login_out():

94 status_dic['

username

'] =none

95 status_dic['

status

'] =false

96 print('

登出成功')

9798

def quit():

99global

flag1

100 flag1 =false

101return

flag1

102103 choice_dict =

113114

115while

flag1:

116 print('')

117 choice = input('

請輸入您選擇的序號:

').strip()

118if

choice.isdigit():

119 choice = int

(choice)

120if

0< choice <=len(choice_dict):

121choice_dict[choice]()

122else

:123 print('

您輸入的超出範圍,請重新輸入')

124125

else

:126 print('

您輸入的選項有非法字元,請重新輸入。

')

部落格園作業1

一 思維導圖 二 c語言語法 1.if else語句 if 條件句 else 2.switch case語句 switch 表示式 注意事項 只要符合表示式就走下面的語句,遇到break時跳出迴圈。如果沒有乙個case可執行就會執行default,執行完就退出。3 for語句 for 語句1 語句2...

部落格園最新作業

1 思維導圖 2 語法認識 1 if if 條件 else 若只有單個語句可不加 可巢狀使用,else跟最近的if使用,表示條件,如果怎麼樣就怎麼樣,否則怎麼樣。遇到的問題 else匹配的if有時會弄錯。忘記加 解決方法 多寫幾遍就不會錯了。2 switch switch 條件 跟if的用法差不多但...

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

作業 用 模擬系統。專案分析 一 首先程式啟動,頁面顯示下面5內容供使用者選擇 1.請登入 2.請註冊 3.進入文章頁面 5.進入日記頁面 6.進入收藏頁面 7.登出賬號 8.退出整個程式 二 必須實現的功能 1.註冊功能要求 a.使用者名稱 密碼要記錄在檔案中。b.使用者名稱要求 只能含有字母或者...