【问题标题】:How to take input in this form in python?如何在python中以这种形式输入?
【发布时间】:2020-10-31 04:01:14
【问题描述】:

所以,我想输入以下内容-

3
1 2
2 4
3 4

第一行包含一个整数 n。以下 n 行中的每一行都包含一对不同的以空格分隔的整数。 我想将第一列的输入存储在一个数组中,将第二列的输入存储在另一个数组中。 我想出了这段代码,你能告诉我哪里出错了,怎么办?

n = int(input())
h = []
g = []
num = 0
for i in range(n):
    m = map(int,input().split("\n"))
    h.append(m)
for j in range(n): 
    ni = map(int,input().split("\n"))
    h.append(ni)

【问题讨论】:

  • 那么你想要 Array1 中的 [3,1,2,3] 和 Array2 中的 [2,4,4] 吗?还是省略了第一个整数?
  • 不,我希望 [1,2,3] 在一个数组中,而 [2,4,4] 在另一个数组中。

标签: python arrays input


【解决方案1】:

当您使用input 阅读时,您会将整个当前行输入作为字符串,因此您在第一次之后对input 的每次调用都将返回'1 2''2 4',最后是'3 4'

您需要在 (空格)上拆分这些字符串,然后将值转换为整数并将它们附加到hg 列表中。例如:

for i in range(n):
    this_h, this_g = map(int, input().split(' '))
    h.append(this_h)
    g.append(this_g)
print(h)
print(g)

输出:

[1, 2, 3]
[2, 4, 4]

【讨论】:

  • @SubhashreeMishra 不用担心 - 我很高兴能帮上忙。
猜你喜欢
  • 1970-01-01
  • 2023-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-29
  • 2023-01-29
  • 2019-10-21
  • 1970-01-01
相关资源
最近更新 更多