為什么要在 input() 后加 .strip()?

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() 不會去除,只會處理開頭和結尾的空白。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/905425.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/905425.shtml
英文地址,請注明出處:http://en.pswp.cn/news/905425.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【日擼 Java 300行】Day 14(棧)

目錄 Day 14:棧 一、棧的基本知識 二、棧的方法 1. 順序表實現棧 2. 入棧 3. 出棧 三、代碼及測試 拓展: 小結 Day 14:棧 Task: push 和 pop 均只能在棧頂操作.沒有循環, 時間復雜度為 O(1). 一、棧的基本知識 詳細的介…

dotnet core c#調用Linux c++導出函數

1.聲明C++導出函數 platform_export.h // // Created by dev on 5/6/25. //#ifndef PLATFORM_EXPORT_H #define PLATFORM_EXPORT_H #if defined(_WIN32)#ifdef LIB_EXPORTS#define LIB_API __declspec(dllimport)#else#define LIB_API __declspec(dllimport)#endif #else#ifde…

SparkSQL操作Mysql

前面的課程我們學習了如何從csv文件中讀入數據,這相當于是對csv這種類型的數據的操作。那么接下來,我們一起看看,如何寫Spark程序來操作mysql數據庫。先來給大家介紹一下我們這節課的主要學習內容: (1)安裝…

語言學中的對象語言與元語言 | 概念 / 區別 / 實例分析

注:英文引文,機翻未校。 語言學中的“對象語言”和“元語言” 劉福長 現代外語 1989年第3期(總第45期) 在閱讀語言學著作時,我們有時會遇到這樣兩個術語:對象語言(object language&#xff0…

livenessProbe 和 readinessProbe 最佳實踐

在 Kubernetes 中,livenessProbe 和 readinessProbe 是確保應用高可用性的關鍵機制,但配置不當可能導致應用頻繁重啟或流量中斷。以下是配置這兩個探針的最佳實踐: 1. 核心區別與作用 探針類型目的失敗后果livenessProbe檢測應用是否 存活&…

集成管理工具Gitlab

GitLab 是一個功能強大的開源代碼托管和協作平臺,集成 GitLab 可以顯著提升團隊的開發效率。下面我將為你介紹如何集成 GitLab,包括安裝配置和基本使用流程。 一、GitLab 安裝與配置 GitLab 有多種安裝方式,推薦使用官方 Omnibus 包安裝&am…

Electron-Vue3、Electron-React、Electron-Angular打造輿情監控系統項目

Electron是一個跨平臺的桌面應用開發框架,可以讓我們用html css js的技術開發跨平臺桌面上可以安裝的軟件。視頻詳解: Electron教程 ElectronVue跨平臺桌面軟件開發教程-2024年更新(大地老師) 從Electron環境搭建開始到手把手教你調試、Elect…

08.webgl_buffergeometry_attributes_none ,three官方示例+編輯器+AI快速學習

本實例主要講解內容 這個Three.js示例展示了無屬性幾何體渲染技術,通過WebGL 2的gl_VertexID特性和偽隨機數生成算法,在著色器中動態計算頂點位置和顏色,而不需要在CPU端預先定義幾何體數據。 核心技術包括: WebGL 2的頂點ID特…

Ubuntu 22.04搭建OpenStreeMap地址解析服務(保姆級教程)

1.數據準備 1.1.全球數據 下載地址:https://planet.openstreetmap.org/ 1.2.特定區域的數據 下載地址:Geofabrik Download Server 2.安裝必要的軟件包 2.1.更新系統軟件包 sudo apt updatesudo apt upgrade 2.2.安裝所需要的軟件包 執行下面的命…

Ubuntu 22.04.5 LTS上部署Docker及相關優化

以下是在Ubuntu 22.04.5 LTS上部署Docker及相關優化的步驟: 安裝Docker 更新系統:在安裝Docker之前,先確保系統是最新的,執行以下命令:sudo apt update sudo apt upgrade -y安裝依賴包:安裝一些必要的依賴…

React -> AI組件 -> 調用Ollama模型, qwen3:1.7B非常聰明

使用 React 搭建一個現代化的聊天界面&#xff0c;支持與 Ollama 本地部署的大語言模型進行多輪對話。界面清爽、功能完整&#xff0c;支持 Markdown 渲染、代碼高亮、<think> 隱藏思考標簽、流式漸進反饋、暗黑模式適配等特性。 &#x1f9e9; 核心功能亮點 ? 模型選擇…

vue2/3 中使用 @vue-office/docx 在網頁中預覽(docx、excel、pdf)文件

1. 安裝依賴&#xff1a; #docx文檔預覽組件npm install vue-office/docx vue-demi0.14.6#excel文檔預覽組件npm install vue-office/excel vue-demi0.14.6#pdf文檔預覽組件npm install vue-office/pdf vue-demi0.14.6 vue2.6版本或以下還需要額外安裝 vue/composition-api …

【應用密碼學】實驗五 公鑰密碼2——ECC

一、實驗要求與目的 1.復習CCC基本概念&#xff0c;并根據實驗平臺提供的資料完成驗證性實驗。 2.編程練習&#xff1a;以書上例題小模數p為例編程實現ECC的基本運算規則。 二、實驗內容與步驟記錄&#xff08;只記錄關鍵步驟與結果&#xff0c;可截圖&#xff0c;但注意排版…

rust-candle學習筆記9-使用tokenizers加載qwen3分詞,使用分詞器處理文本

參考&#xff1a;about-pytorch&#xff0c; about-tokenizers 在魔搭社區鏈接下載qwen3的tokenizer.json文件 添加依賴庫&#xff1a; cargo add tokenizers tokenizers庫初體驗&#xff1a; use tokenizers::tokenizer::{self, Result, Tokenizer};fn main() -> Resu…

【MySQL】存儲引擎 - ARCHIVE、BLACKHOLE、MERGE詳解

&#x1f4e2;博客主頁&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;博客倉庫&#xff1a;https://gitee.com/JohnKingW/linux_test/tree/master/lesson &#x1f4e2;歡迎點贊 &#x1f44d; 收藏 ?留言 &#x1f4dd; 如有錯誤敬請指正&#xff01; &…

5.Redission

5.1 前文鎖問題 基于 setnx 實現的分布式鎖存在下面的問題&#xff1a; 重入問題&#xff1a;重入問題是指 獲得鎖的線程可以再次進入到相同的鎖的代碼塊中&#xff0c;可重入鎖的意義在于防止死鎖&#xff0c;比如 HashTable 這樣的代碼中&#xff0c;他的方法都是使用 sync…

C語言主要標準版本的演進與核心區別的對比分析

以下是C語言主要標準版本的演進與核心區別的對比分析 K&R C&#xff08;1978年&#xff09; 定位?&#xff1a;非標準化的原始版本&#xff0c;由Brian Kernighan和Dennis Ritchie定義 特性?&#xff1a; 基礎語法&#xff1a;函數聲明無參數列表&#xff08;如int func…

【C++設計模式之Template Method Pattern】

C設計模式之Template Method Pattern 模式定義核心思想動機(Motivation)結構&#xff08;Structure&#xff09;實現步驟應用場景要點總結 模式定義 模式定義&#xff1a; 定義一個操作中的算法的骨架(穩定)&#xff0c;而將一些步驟延遲(變化)到子類中。Template Method使得子…

【動態導通電阻】p-GaN HEMTs正向和反向導通下的動態導通電阻

2024 年,浙江大學的 Zonglun Xie 等人基于多組雙脈沖測試方法,研究了兩種不同技術的商用 p-GaN 柵極 HEMTs 在正向和反向導通模式以及硬開關和軟開關條件下的動態導通電阻(RON)特性。實驗結果表明,對于肖特基型 p-GaN 柵極 HEMTs,反向導通時動態 RON 比正向導通高 3%-5%;…

PDFMathTranslate:科學 PDF 文件翻譯及雙語對照工具

PDFMathTranslate&#xff1a;科學 PDF 文件翻譯及雙語對照工具 在科研和學習過程中&#xff0c;我們經常會遇到大量的英文 PDF 文獻&#xff0c;翻譯這些文獻成為了一項繁瑣且耗時的工作。PDFMathTranslate 是一款強大的科學 PDF 文件翻譯及雙語對照工具&#xff0c;它能夠保…