---
# System prepended metadata

title: TQC+ 程式語言Python 809 密碼規則
tags: [TQC, Python]

---

###### tags: `Python`,`TQC`
#  TQC+ 程式語言Python 809 密碼規則


1. 題目說明:
請開啟PYD809.py檔案，依下列題意進行作答，檢查密碼是否符合規則，使輸出值符合題意要求。作答完成請另存新檔為PYA809.py再進行評分。

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

3. 輸入輸出：
輸入說明
一個字串

輸出說明
判斷是否符合密碼規則

![](https://i.imgur.com/Yn2vmnS.png)

:::info
:information_source: Info
字符串.isalnum()    所有字符都是數字或者字母，為真返回 Ture，否則返回 False。
	字符串.isalpha()     所有字符都是字母，為真返回 Ture，否則返回 False。
	字符串.isdigit()     所有字符都是數字，為真返回 Ture，否則返回 False。
	字符串.islower()    所有字符都是小寫，為真返回 Ture，否則返回 False。
	字符串.isupper()    所有字符都是大寫，為真返回 Ture，否則返回 False。
	字符串.istitle()    所有單詞都是首字母大寫，為真返回 Ture，否則返回 False。
	字符串.isspace()    所有字符都是空白字符，為真返回 Ture，否則返回 False。 
:::


```python=
#method 1
user = input()
count = 0
for i in user:
    if i.isupper():
        count += 1
if len(user) < 8:
    print("Invalid password")
elif count < 1:
    print("Invalid password")
elif not i.isalnum :
    print("Invalid password")
else:
    print("Valid password")

#method 2
user = input()
a = len(user)
count = 0
for i in user:
    if i.isupper():
        count = count+1
if a < 8:
    print("Invalid password")
elif not user.isalnum() or count == 0:
    print("Invalid password")
else:
    print("Valid password")

```
