Como exibir a saída na mesma linha em Python
- 1116
- 258
- Randal Kuhlman
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á?")12 | print ("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)123 | importar 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á?")123 | importar 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)1234 | Importar 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!
- « Lendo com eficiência uma linha de arquivo por linha em um script de shell
- Como declarar uma variável no Python »