PYTHON從入門到實踐7-獲取用戶輸入與while循環

# 【1】獲取用戶輸入
# 【2】python數據類型的轉換
input_res = input("請輸入一個數字\n")
if int(input_res) % 10 == 0:print("你輸入的數是10的倍數")
else:print("你輸入的數不是10的倍數")
# 【3】while循環,適合不知道循環多少次
input_res = input("請輸入奶茶配料\n")
while input_res != "quit":print("好的,奶茶會為你添加", input_res)input_res = input("請輸入奶茶配料\n")

一、獲取用戶輸入

在Python中,我們可以使用內置的input()函數來獲取用戶的輸入。這個函數會暫停程序執行,等待用戶在命令行中輸入內容,并以字符串的形式返回用戶輸入。

python

復制

下載

input_res = input("請輸入一個數字\n")

input()函數可以接受一個字符串參數,這個字符串將作為提示信息顯示給用戶。在上面的例子中,提示信息是"請輸入一個數字",\n表示換行,使光標移動到下一行。

二、數據類型轉換

用戶輸入的內容默認都是字符串類型,但有時我們需要將其轉換為其他類型進行處理。Python提供了幾種內置的數據類型轉換函數:

  • int(): 將字符串轉換為整數

  • float(): 將字符串轉換為浮點數

  • str(): 將其他類型轉換為字符串

在我們的例子中,我們需要判斷用戶輸入的數字是否是10的倍數,因此需要將字符串轉換為整數:

python

復制

下載

if int(input_res) % 10 == 0:print("你輸入的數是10的倍數")
else:print("你輸入的數不是10的倍數")

這里int(input_res)將用戶輸入的字符串轉換為整數,然后使用取模運算符%判斷是否能被10整除。

三、while循環的使用

while循環是Python中的一種基本循環結構,它會在條件為真時重復執行代碼塊。while循環特別適合在不確定循環次數的情況下使用。

在我們的奶茶配料例子中:

python

復制

下載

input_res = input("請輸入奶茶配料\n")
while input_res != "quit":print("好的,奶茶會為你添加", input_res)input_res = input("請輸入奶茶配料\n")

這個循環的工作流程是:

  1. 首先獲取用戶輸入的配料

  2. 檢查輸入是否等于"quit"

  3. 如果不等于"quit",則執行循環體(打印添加配料的信息并再次獲取輸入)

  4. 重復步驟2-3,直到用戶輸入"quit"為止

四、實際應用中的注意事項

  1. 輸入驗證:在實際應用中,應該對用戶輸入進行驗證。例如在第一個例子中,如果用戶輸入的不是數字,int()轉換會引發ValueError異常。

    改進版本:

    python

    復制

    下載

    input_res = input("請輸入一個數字\n")
    try:if int(input_res) % 10 == 0:print("你輸入的數是10的倍數")else:print("你輸入的數不是10的倍數")
    except ValueError:print("請輸入有效的數字!")
  2. 循環退出條件:在while循環中,確保有明確的退出條件,否則可能導致無限循環。

  3. 用戶體驗:可以提供更友好的提示信息,比如在奶茶配料例子中,可以告訴用戶如何退出:

    python

    復制

    下載

    print("請輸入奶茶配料,輸入'quit'結束")

五、總結

本文介紹了Python中處理用戶輸入的input()函數、數據類型轉換以及while循環的使用。這些是Python編程的基礎知識,掌握它們對于開發交互式程序非常重要。關鍵點包括:

  1. input()函數總是返回字符串

  2. 使用int(),?float()等函數進行類型轉換

  3. while循環適合不確定循環次數的情況

  4. 在實際應用中要考慮輸入驗證和用戶體驗

希望這篇教程能幫助你更好地理解Python中的用戶輸入處理和循環控制。試著修改這些例子,加入更多功能來鞏固你的理解吧!

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

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

相關文章

學習筆記(C++篇)—— Day 8

1.STL簡介 STL(standard template libaray-標準模板庫):是C標準庫的重要組成部分,不僅是一個可復用的組件庫,而且是一個包羅數據結構與算法的軟件框架。 2.STL的六大組件 先這樣,下一部分是string的內容,內容比較多&a…

ant+Jmeter+jenkins接口自動化,如何實現把執行失敗的接口信息單獨發郵件?

B站講的最好的自動化測試教程,工具框架附項目實戰一套速通,零基礎完全輕松掌握!自動化測試課程、web/app/接口 實現AntJMeterJenkins接口自動化失敗接口郵件通知方案 要實現只發送執行失敗的接口信息郵件通知,可以通過以下步驟實…

惡意Python包“psslib“實施拼寫錯誤攻擊,可強制關閉Windows系統

Socket威脅研究團隊發現一個名為psslib的惡意Python包,該軟件包偽裝成提供密碼安全功能,實則會突然關閉Windows系統。這個由化名umaraq的威脅行為者開發的軟件包,是對知名密碼哈希工具庫passlib的拼寫錯誤仿冒(typosquatting&…

云原生灰度方案對比:服務網格灰度(Istio ) 與 K8s Ingress 灰度(Nginx Ingress )

服務網格灰度與 Kubernetes Ingress 灰度是云原生環境下兩種主流的灰度發布方案,它們在架構定位、實現方式和適用場景上存在顯著差異。以下從多個維度對比分析,并給出選型建議: 一、核心區別對比 維度服務網格灰度(以 Istio 為例…

科技如何影響我們的生活?

科技已成為我們生活中不可或缺的一部分,徹底改變了我們工作、溝通和生活的方式。從智能手機到智能家居,科技已滲透到我們生活的每個角落。無論是用手機鬧鐘開啟新的一天,通過 Alexa 開關燈光,還是打開 Uber 或 Lyft 打車上班&…

Re--攻防世界-基礎android

Jadx 可以看到有賬號密碼輸入 進入checkPassword函數 分析一下: 對每個字符 pass[len] 進行以下計算 pass[len] (char) (((255 - len) - 100) - pass[len]); 解密腳本 def decrypt_password(): password [] for len in range(12): c (255 - le…

InnoDB表空間結構-系統表空間

系統表空間整體結構 頁號為7的SYS類型頁結構

如何構建知識庫

構建個人知識庫是一個系統化的過程,需要結合工具選擇、信息管理和持續優化。以下是分步驟的實用指南,包含現代工具和方法的建議: 一、明確知識庫定位(Why) ?核心目標? 學習型:支持學術研究/職業發展&…

3 大語言模型預訓練數據-3.2 數據處理-3.2.2 冗余去除——2.SimHash算法文本去重實戰案例:新聞文章去重場景

SimHash算法文本去重實戰案例:新聞文章去重場景 一、案例背景與目標二、具體實現步驟與示例1. **待去重文本示例**2. **步驟1:文本預處理與特征提取**3. **步驟2:特征向量化與哈希映射**4. **步驟3:特征向量聚合**5. **步驟4&…

MSPM0G3507之GPIO配置報錯 #Sysconfig報錯

聲明:本文完全免費閱讀,如果你發現某天文章被設置了“VIP權限”,請私信我解除(非筆者所為)。 一、問題現象 在打開sysconfig后,GPIO這里會報錯。 Unable to render selection Error:launchPadShortcut:Vali…

2025年檢測相機十大品牌測評:工業級精度與場景化解決方案解析

一、引言 在工業自動化與智能制造領域,檢測相機作為質量管控的核心硬件,正以“高精度、高速度、高適應性”的特性重塑生產流程。這類設備通過光學成像與智能算法結合,實現對工件表面缺陷、尺寸偏差、裝配精度的精準檢測,效率較傳…

Python異步編程深度解析

一、異步編程范式演進 同步阻塞的困境:GIL限制與線程切換開銷 事件循環本質:單線程并發模型 協程優勢:比線程更輕量的執行單元 IO密集型場景:網絡請求/文件操作的最佳實踐 二、核心語法精要 import asyncioasync def fetch_…

網絡緩沖區

用戶態網絡緩沖區 網絡緩沖區原理為什么需要用戶態網絡緩沖區Linux下如何接收和發送數據包用戶態網絡緩沖區設計的本質 網絡緩沖區代碼實現 網絡緩沖區原理 為什么需要用戶態網絡緩沖區 在網絡開發中,我們經常使用到read/write/recv/send等系統調用接口&#xff0…

微信小程序實現簡版點贊動畫

這是第二次寫canvas,基于微信小程序文檔demo進行改寫 demo效果為方塊橫向來回循環移動 我想做的是直播間那種點贊效果,豎向曲線移動、方塊換成圖片、點擊添加繪制元素 第一階段實現豎向曲線移動、點擊添加繪制元素;下一階段講方塊替換為圖…

實現一個AI大模型當前都無法正確實現的基礎二叉樹讀取算法

概述 圖1: 圖2: 上圖幫大家溫習完全二叉樹的概念,本文講的是完全順序二叉樹的初始化 華為的員工、考過華為OD的員工、參加過其他類似大廠的考試的員工一般做過二叉樹的初始化,甚至有些還碰到過手撕代碼時面試官要求做二叉樹遍歷,看完本文的…

【攻防篇】阿里云服務器中 如何關閉docker api端口

在阿里云服務器(ECS)上,Docker API 默認監聽 2375(非加密)和 2376(TLS加密)端口。如果未正確配置,可能被惡意利用(如挖礦攻擊)。以下是關閉和加固 Docker API…

暑假復習篇之類與對象

面向對象:①類與對象②封裝③繼承④接口 類與對象: 概念:類就是類別的意思 用class表示 / 面向對象編程,萬物皆可編程,在程序中表示一個事物時,往往因為事物的復雜程度導致編程的代碼非常復雜 【基本數…

RabbitMQ RPC模式Python示例

文章目錄 1.服務端2.客戶端3.調用結果 1.服務端 #!/usr/bin/env python3 # -*- coding: UTF-8 -*- """ File: rabbitmq_server.py Date: 2025/6/26 10:42 Author: xxx Description: 1. RabbitMQ服務端,支持多節點命令執行 2. 作為被控…

Rust代碼規范之蛇形命名法和駝峰命名法

Rust 使用兩種主要的命名風格:駝峰命名法(UpperCamelCase)和蛇形命名法(snake_case)。通常,類型(如結構體、枚舉、特征)使用駝峰命名法,而變量、函數、方法等使用蛇形命名…

編寫CSS的格式

1、內聯樣式的css import React, { PureComponent } from reactexport class App extends PureComponent {constructor() {super()this.state {fs: 20}}render() {const { fs } this.statereturn (<div><p style{{ color: red, fontSize: ${fs}px }}>哈哈哈哈哈…