python中的STDIN

python中的STDIN,python,stdin,Python,Stdin,我学习python,我的任务对我来说很困难 任务: 输入2个字符串: 5. 2 3 9 2 9 样本输出: 2 2 3 9 我知道如何排序,但输入有问题。测试用例输入使用标准输入。我这样写: import sys input = sys.stdin.read() tokens = input.split() n = int(tokens[0]) A = tokens[1:len(tokens)] B = [] M = 10 for i in range(M): B.append(0

我学习python,我的任务对我来说很困难

任务: 输入2个字符串: 5. 2 3 9 2 9 样本输出: 2 2 3 9

我知道如何排序,但输入有问题。测试用例输入使用标准输入。我这样写:

import sys

input = sys.stdin.read()
tokens = input.split()

n = int(tokens[0])

A = tokens[1:len(tokens)]
B = []

M = 10

for i in range(M):
  B.append(0)

for j in range(n):
  B[int(A[j])] = B[int(A[j])] + 1

k = 0
for i in range(M):
  for j in range(B[i]):
    A[k] = i
      k = k + 1

print(A)  
并获取的错误超出范围 B[intA[j]]=B[intA[j]]+1

代替

input = sys.stdin.read()
tokens = input.split()

n = int(tokens[0])

A = tokens[1:len(tokens)]
B = []
使用以下代码

input_n = sys.stdin.readline()
n = int(input_n)
input_tokens = sys.stdin.readline()
tokens = input_tokens.split()

A = tokens[0:len(tokens)]
B = []

您在单独的行中输入n和令牌。因此,请两次调用sys.stdin.readline

5的作用是什么?输入中是数组元素的计数