【Python入门速学】1.5. 用户输入与处理

发布于:2025-03-19 ⋅ 阅读:(17) ⋅ 点赞:(0)

1.5.1. 获取用户输入

要让程序获取用户输入,我们需要:

  1. 一种方法来接收用户输入
  2. 一种方法来存储用户输入

我们可以使用变量来存储输入,但如何接收输入呢?
Python 提供了 input() 函数来完成这个任务。

1.5.2. input() 函数

input() 函数用于打印提示信息,并等待用户输入
来看一个示例:

name = input("What is your name? ")
print("Hello, " + name + "!")

代码解析:

  1. input("What is your name? ") 显示提示信息 "What is your name? "。
  2. Python 解释器在 input() 这一行暂停,等待用户输入内容。
  3. 用户输入内容并按下 Enter 后,该输入内容会存储到变量 name 中。
  4. print("Hello, " + name + "!") 输出 “Hello, 用户输入的名字!”。

input() 运行示例

当你运行上面的代码时,程序的行为如下:

What is your name? Alice
Hello, Alice!

输入的类型

input() 总是返回一个字符串str)。

即使用户输入的是数字,Python 仍然会将其视为字符串:

age = input("Enter your age: ")
print(type(age))  # 输出: <class 'str'>

如果你输入 25,变量 age 仍然是字符串 “25”,而不是整数 25。

1.5.3. 处理数值输入

如果你想让用户输入的数字真正作为整数使用,你需要转换类型

Python 提供了 int() 函数来将字符串转换为整数:

age = int(input("Enter your age: "))
print("Next year, you will be", age + 1)

代码解析:

  1. input("Enter your age: ") 获取用户输入(仍然是字符串)。
  2. int() 将字符串转换为整数。
  3. 变量 age 现在存储的是整数,因此可以进行数学运算。

运行示例:

Enter your age: 25
Next year, you will be 26

避免类型错误

如果用户输入的内容不是数字int() 会报错。例如:

Enter your age: hello
ValueError: invalid literal for int() with base 10: 'hello'

为了避免错误,你可以使用 try-except 结构进行错误处理:

try:
    age = int(input("Enter your age: "))
    print("Next year, you will be", age + 1)
except ValueError:
    print("Please enter a valid number.")

1.5.4. 函数组合(Function Composition)

age = int(input("Enter your age: ")) 这行代码中,我们同时使用了 input()int(),这就是函数组合的例子。

代码执行顺序

当执行age = int(input("Enter your age: "))时:

  1. input("Enter your age: ") 先运行,显示提示信息并等待用户输入。
  2. 用户输入 22 并按下 Enter,input() 返回字符串 “22”。
  3. int("22") 将其转换为整数 22。
  4. 22 被存储在变量 age 中。

理解函数组合的关键是:从内向外解析代码。

1.5.5. 总结

  • input() 获取用户输入,返回 字符串
  • int() 将字符串转换为 整数,以便进行数学运算。
  • 函数组合(Function Composition)是编程中的重要概念,执行顺序为从内到外
  • 处理用户输入时,应考虑类型转换错误处理

网站公告

今日签到

点亮在社区的每一天
去签到