TQC+ 程式語言Python 809 密碼規則
第8類:字串(String)的運作

TQC+ 程式語言Python 809 密碼規則

題目說明:

請撰寫一程式,要求使用者輸入一個密碼(字串),檢查此密碼是否符合規則。密碼規則如下:
 a. 必須至少八個字元。
 b. 只包含英文字母和數字。
 c. 至少要有一個大寫英文字母。
 d. 若符合上述三項規則,程式將顯示檢查結果為【Valid password】,否則顯示【Invalid password】。

範例輸入1

39Gfjkd98

範例輸出1

Valid password

範例輸入2

39dk8fh

範例輸出2

Invalid password
 

程式碼:

2022/05/07 更新

原本的程式碼,如果只輸入數字,輸出結果也是「Valid password」,不符合規則 C,因此新增兩種寫法,第一種與原本比較,多了一個判斷,判斷是否都是數字,第二種寫法為上述的簡化版,使用 isalnum() 方法代替 isalpha()isdigit() 的判斷。



原本的寫法:

Str = input()

if len(Str) <= 7 or Str.islower():
    print('Invalid password')
else:
    for i in range(len(Str)):
        if not Str[i].isalpha() and not Str[i].isdigit():
            print('Invalid password')
            break
    else:
        print('Valid password')

更新寫法一:

Str = input()

if len(Str) <= 7 or Str.islower():
    print('Invalid password')
else:
    if Str.isdigit():
    	print('Invalid password')
    else:
    	for i in range(len(Str)):
        	if not Str[i].isalpha() and not Str[i].isdigit():
            		print('Invalid password')
            		break
    	else:
        	print('Valid password')

更新寫法二:

Str = input()

if len(Str) <= 7 or Str.islower() or Str.isdigit() or not Str.isalnum():
    print('Invalid password')
else:
    print('Valid password')



以上兩種寫法,沒有在評測系統測試過,所以不知道是否會通過測試,原本的寫法有通過~~

TQC+ 程式語言Python 第8類:字串(String)的運作





如果覺得文章內容還不錯的話,麻煩請幫我點個讚!感謝

可以多點幾次喔~~

第一次點讚需使用 Google 或 Facebook 帳號註冊

2 則留言

發表迴響