a, b = map(int, input().split()) 从用户输入中读取两个整数
在 Python 中,a, b = map(int, input().split()) 是一种常用的输入处理方式,用于从输入中读取两个整数。
代码解释
a, b = map(int, input().split())
-
input():input()是一个内置函数,用于从用户获取输入。它返回一个字符串。- 例如,如果用户输入
3 5,input()会返回字符串"3 5"。
-
split():split()是字符串的方法,用于将字符串分割成一个列表,默认按空格分割。- 对于输入
"3 5",split()会返回列表["3", "5"]。
-
map(int, ...):map()是一个内置函数,用于将一个函数应用于一个可迭代对象的每个元素。- 在这里,
map(int, ...)将int函数应用于split()返回的列表中的每个元素,将字符串转换为整数。 - 对于列表
["3", "5"],map(int, ["3", "5"])会返回一个迭代器,其内容为[3, 5]。
-
a, b = ...:- 这是 Python 的多重赋值语法,用于将一个可迭代对象的元素分别赋值给多个变量。
- 在这里,
a和b分别被赋值为map返回的迭代器中的第一个和第二个元素。 - 对于
[3, 5],a会被赋值为3,b会被赋值为5。
示例
示例 1:读取两个整数
a, b = map(int, input("请输入两个整数,用空格分隔: ").split())
print(f"a = {a}, b = {b}")
如果用户输入 3 5,输出将是:
请输入两个整数,用空格分隔: 3 5
a = 3, b = 5
示例 2:计算两个整数的和
a, b = map(int, input("请输入两个整数,用空格分隔: ").split())
sum_result = a + b
print(f"两个整数的和是: {sum_result}")
如果用户输入 3 5,输出将是:
请输入两个整数,用空格分隔: 3 5
两个整数的和是: 8
注意事项
-
输入格式:
- 输入必须符合预期格式,即两个整数之间用空格分隔。如果输入不符合格式(例如输入了非整数或没有用空格分隔),程序会抛出异常。
- 例如,如果输入
3,5或3 五,程序会抛出ValueError。
-
错误处理:
- 为了提高程序的健壮性,可以使用
try-except块来捕获可能的输入错误。 - 例如:
- 为了提高程序的健壮性,可以使用
try:
a, b = map(int, input("请输入两个整数,用空格分隔: ").split())
print(f"a = {a}, b = {b}")
except ValueError:
print("输入格式错误,请确保输入两个用空格分隔的整数。")
- 扩展到多个变量:
- 这种方法可以扩展到读取多个变量。例如,读取三个整数:
a, b, c = map(int, input("请输入三个整数,用空格分隔: ").split())
print(f"a = {a}, b = {b}, c = {c}")
总结
a, b = map(int, input().split()) 是一种简洁且高效的方法,用于从用户输入中读取两个整数。通过结合 input()、split() 和 map(),可以轻松地将输入的字符串转换为整数,并分别赋值给多个变量。
