Como exibir a saída na mesma linha em Python

Como exibir a saída na mesma linha em Python

Ao escrever um script python, pode haver casos em que você deseja exibir a saída na mesma linha, em vez de tê -la em uma nova linha sempre. Isso pode ser particularmente útil ao criar uma barra de progresso ou atualizar a saída em tempo real.

Neste tutorial, abordaremos os métodos que você pode usar para exibir a saída na mesma linha em Python.

Método 1: Usando o fim Argumento no imprimir() Função

O imprimir() A função no python permite especificar o caráter final que segue a saída. Por padrão, isso é definido como um personagem de nova linha \ n, que faz com que a saída seja exibida em uma nova linha. Para manter a saída na mesma linha, podemos especificar um caractere final diferente, como um espaço .

Aqui está um exemplo:

print ("hello", end = ") print (" como você está?")
12print ("hello", end = ") print (" como você está?")

A saída deste código será:

Saída: Olá, como você está? 

Como você pode ver, as duas saídas são exibidas na mesma linha.

Método 2: Usando o rubor Argumento no imprimir() Função

Outra maneira de exibir a saída na mesma linha é usar o rubor argumento no imprimir() função. Este argumento diz a Python para liberar o buffer de saída, o que significa que a saída é exibida imediatamente em vez de ser armazenada em um buffer e exibida posteriormente. Para usar este argumento, você precisará defini -lo como verdadeiro.

Aqui está um exemplo:

importar sys print ("hello", end = ", flush = true) print (" como você está?", Flush = true)
123importar sysprint ("hello", end = ", flush = true) print (" como você está?", Flush = true)

A saída deste código será a mesma que em Método 1, Mas a vantagem de usar o argumento de descarga é que ele funcionará independentemente do tamanho do buffer de saída.

Método 3: Usando o sys.stdout.escrever() Método

Outra maneira de exibir a saída na mesma linha é usar o sys.stdout.escrever() método. Este método grava no fluxo de saída padrão (sys.stdout) sem adicionar um personagem de nova linha no final.

Aqui está um exemplo:

importar sistemas.stdout.Escreva ("Olá") Sys.stdout.Escreva ("Como você está?")
123importar syssys.stdout.Escreva ("Olá") Sys.stdout.Escreva ("Como você está?")

A saída deste código será:

Saída: Olá, como você está? 

Como você pode ver, as duas saídas são exibidas na mesma linha.

Método 4: Usando o retorno do carro (\ r)

O quarto método para exibir a saída na mesma linha é usar um retorno de carro (\ r). Um retorno de carruagem é um personagem especial que move o cursor para o início da linha atual e substitui o conteúdo existente por novo conteúdo.

Aqui está um exemplo:

Importar tempo para i no intervalo (10): print ("\ r Progresso: %".formato (i*10), end = ") tempo.sono (1)
1234Importar tempo para i no intervalo (10): print ("\ r Progresso: %".formato (i*10), end = ") tempo.sono (1)

A saída deste código será:

Saída: Progresso: 90% 

Como você pode ver, a barra de progresso é exibida na mesma linha e atualiza a cada segundo.

Conclusão

Neste tutorial, abordamos quatro métodos para exibir a saída na mesma linha em Python. Você pode escolher o método que melhor atende às suas necessidades com base no tipo de saída e no nível de controle que você precisa sobre a saída. Esteja você criando uma barra de progresso ou apenas deseja atualizar a produção em tempo real, esses métodos o ajudarão a alcançar o resultado desejado.

É importante observar que o sys.stdout.escrever() método e o \ r O caractere são os métodos mais diretos para controlar a saída na mesma linha, pois eles permitem que você escreva diretamente no fluxo de saída padrão. Por outro lado, o argumento final no imprimir() função e o rubor argumento são métodos mais simples que podem ser mais fáceis de usar em alguns casos.

Em conclusão, com esses métodos, agora você pode controlar facilmente a exibição da saída no Python, seja você é um iniciante ou um especialista. Experimente esses métodos em seu próximo projeto Python e veja os resultados para si mesmo!