strip()
是 Python 字符串的一個方法,用于去除字符串開頭和結尾的空白字符(包括空格、制表符 \t
、換行符 \n
等)。
為什么要在 input()
后加 .strip()
?
- 用戶在輸入時,可能會不小心在開頭或結尾輸入空格,例如:
" John"
(前面有空格)"John "
(后面有空格)" John "
(前后都有空格)
- 如果不處理,程序會認為
" John"
和"John"
是兩個不同的用戶名,導致驗證失敗。 - 使用
.strip()
可以自動去除這些多余的空格,使輸入更規范。
示例對比
不加 strip()
的情況
username = input() # 用戶輸入 " John"(前面有空格)
if username in users: # 檢查的是 " John",而不是 "John"print("用戶名存在")
else:print("用戶名不存在") # 會輸出這個,因為字典里沒有 " John"
輸出:
用戶名不存在
(但實際上用戶想輸入的是 "John"
,只是不小心加了空格)
加 strip()
的情況
username = input().strip() # 用戶輸入 " John" → 自動變成 "John"
if username in users: # 檢查的是 "John"print("用戶名存在") # 正確匹配
else:print("用戶名不存在")
輸出:
用戶名存在
(程序自動去除了多余的空格,驗證成功)
總結
strip()
的作用:去除字符串開頭和結尾的空白字符,使輸入更準確。- 在登錄驗證等場景特別有用,避免因用戶輸入的空格導致驗證失敗。
- 如果用戶名或密碼中間有空格(如
"Tom Jerry"
),strip()
不會去除,只會處理開頭和結尾的空白。