Python

10|使用 input 接收输入并转换类型

面向按顺序学习 Python 的初学者,本篇在第 07~09 篇知识上,帮助读者接收用户文本并转换为数值。

◉ 1.2k 字◌ 8 分钟♙ 郑在混

这套课程按知识依赖排列。本篇的前置知识是:第 07~09 篇。学完后,你应该能够接收用户文本并转换为数值。

本篇要解决的问题

本篇只处理“使用 input 接收输入并转换类型”这一件事。示例基于 Python 3.14.6,在 macOS 环境核验;除明确标注的终端命令外,代码本身只使用 Python 标准能力。

先看清一个容易误解的细节

input 得到文本后再转换

input() 的结果始终是字符串。即使键盘输入 18,程序首先得到的也是 "18",需要 int() 后才能按整数参与计算。

核心概念

  • 提示文字应告诉用户需要输入什么。
  • int() 只能转换符合整数格式的文本;输入其他内容会产生异常,异常处理将在第 33 篇系统讲解。
  • 输入转换和业务计算分开写,定位问题更直接。

跟着示例运行

把下面代码保存到本课脚本并运行:

name = input("请输入姓名:")
age_text = input("请输入年龄:")
age = int(age_text)

print("你好," + name)
print(age + 1)

预期结果:

根据输入显示姓名,并输出下一年的年龄

输出中包含环境路径、集合元素或日志格式时,具体文字和顺序可能随本机环境变化;判断是否成功应以本篇说明的关键结果为准。

按执行顺序拆开看

  1. 两次 input() 都暂停等待输入,并分别返回字符串。变量名 age_text 用来提醒这仍是文本。
  2. int(age_text) 创建整数对象,后面的 age + 1 才执行数值加法;字符串直接加整数会产生类型错误。

初学者容易混淆的地方

  • 直接计算 input(...) + 1,忽略输入结果是字符串。
  • 假设任何输入都能转换为整数。异常处理在后续课程讲解,本篇先使用符合提示的输入。

练习

  1. 接收两个整数并输出它们的和。
  2. 输入 18.5int(),记录错误类型,但暂时不要尝试忽略错误。

练习应先独立完成,再通过增加 print 输出或检查文件内容观察中间状态。当前课程尚未讲到的能力,不要求提前搜索复杂写法。

本篇边界

本篇目标是接收用户文本并转换为数值。没有展开的高级机制会放到后续课程;先确保能够解释示例中每一行代码,再进入下一篇。

相关文章

© 2026 郑在混知识库 · 已运行 46 天 · 豫ICP备2026037626号-1