Às vezes, podemos ficar presos a um problema em que recebemos um fluxo de números separados por espaço com o objetivo de convertê-los em uma lista de números. Este tipo de problema pode ocorrer na programação diária comum ou na programação competitiva durante a obtenção de entradas. Vamos discutir algumas maneiras pelas quais esse problema pode ser resolvido.

Método # 1: Usandolist() + split()
Os números separados por espaço podem ser convertidos em lista usando uma splitfunção simples que converteria a string em lista de números e, portanto, resolveria nosso problema.

test_str = "10 12 3 54 6 777 443"
print("The original string is : " + test_str) 
res = list(test_str.split()) 
print("The list of stream of numbers : " + str(res)) 
Resultado :
A string original é: 10 12 3 54 6 777 443
A lista de fluxo de números: ['10', '12', '3', '54', '6', '777', '443']

 

Método # 2: Usomap() + split() + list()
Uma vez que a desvantagem do método acima é que a conversão não altera o tipo de dados dos números da unidade, então se for desejado alterar o tipo de dados do número também, sugere-se usar adicionalmente map()para ter uma lista de strings como inteiros.



test_str = "10 12 3 54 6 777 443"
print("The original string is : " + test_str) 
res = list(map(int, test_str.split())) 
print("The list of stream of numbers : " + str(res)) 
Resultado :
A string original é: 10 12 3 54 6 777 443
A lista de fluxo de números: [10, 12, 3, 54, 6, 777, 443]