欢迎访问宙启技术站
智能推送

Python中如何处理用户输入的空值或错误输入

发布时间:2024-01-04 12:21:56

在Python中处理用户输入的空值或错误输入通常涉及到异常处理和条件判断。

一、处理空值输入:

处理用户输入的空值可以通过判断输入字符串的长度或使用try-except语句来实现。

1. 判断输入字符串的长度:

a) 使用len()函数获取字符串的长度,如果长度为0,则判断为用户输入的是空值。

b) 使用字符串的strip()方法去除首尾的空字符后,再判断字符串的长度。

示例代码:

text = input("请输入一个字符串:")

# 方法1:使用len()函数
if len(text) == 0:
   print("您输入了空值。")

# 方法2:使用strip()方法去除首尾的空字符
if text.strip() == "":
   print("您输入了空值。")

2. 使用try-except语句:

使用try-except语句可以捕捉用户输入为空值时抛出的异常,并进行相应的处理。

示例代码:

while True:
    try:
        text = input("请输入一个数字:")
        if text.strip() == "":
            raise ValueError("输入不能为空")
        number = int(text)
        print("您输入的数字是:", number)
        break
    except ValueError as e:
        print("输入错误:", e)

运行结果:

请输入一个数字:
输入错误: 输入不能为空
请输入一个数字:abc
输入错误: invalid literal for int() with base 10: 'abc'
请输入一个数字:100
您输入的数字是: 100

二、处理错误输入:

处理错误输入可以通过条件判断来验证用户输入的有效性,并作出相应的处理。

示例代码:

while True:
   try:
      age = int(input("请输入您的年龄:"))
      if age < 0:
         raise ValueError("年龄不能为负数")
      if age >= 18:
         print("您已经成年了。")
      else:
         print("您还未成年。")
      break
   except ValueError as e:
      print("输入错误:", e)

运行结果:

请输入您的年龄:-10
输入错误: 年龄不能为负数
请输入您的年龄:20
您已经成年了。

以上是Python中处理用户输入的空值或错误输入的方法和示例,通过异常处理和条件判断,我们可以有效地处理用户输入中的异常情况,从而提高程序的鲁棒性和用户体验。