python如何从键盘输入数组

python如何从键盘输入数组

作者:Elara发布时间:2026-01-14阅读时长:0 分钟阅读次数:7

用户关注问题

Q
如何在Python中从用户输入多个数字并存储为数组?

我想在Python程序中让用户输入一系列数字,然后把这些数字存储到一个数组里,应该怎么做?

A

使用input()和split()方法读取多个数字并转换为数组

可以使用input()函数让用户输入一行数字,使用split()方法将输入的字符串按空格分割,再通过列表推导式将每个分割的字符串转换为整数或浮点数,最后存储到列表中。示例代码如下:

user_input = input('请输入数字,使用空格分隔: ')
array = [int(x) for x in user_input.split()]
print(array)
Q
怎样获取用户输入的二维数组?

如果我想要用户输入一个二维数组,比如多行多列数据,Python中该如何实现?

A

逐行读取输入并转换成二维列表

可以先让用户输入数组的行数,然后逐行读取输入,每行再利用split()拆分,并将每个元素转换为数字,最后存储到一个嵌套列表中。示例代码:

rows = int(input('请输入行数: '))
matrix = []
for _ in range(rows):
    line = input('请输入一行数字,以空格分隔: ')
    row = [int(x) for x in line.split()]
    matrix.append(row)
print(matrix)
Q
如何确保用户输入的数组元素类型正确?

当用户输入数组元素时,如何判断输入合法且转换不出错?例如只允许输入整数?

A

使用异常处理和输入验证确保转换安全

在读取用户输入并转化为数字时,可以使用try-except块捕获转换异常,提示用户重新输入,保证元素类型的正确。如下示例为只允许输入整数:

while True:
    user_input = input('请输入整数数组,空格分隔: ')
    try:
        array = [int(x) for x in user_input.split()]
        break
    except ValueError:
        print('输入包含非整数,请重新输入。')
print(array)