Embora seja uma linguagem pouco eficiente (quando comparada com C++), Python continua sendo uma opção, principalmente para problemas mais simples, ou então para problemas que envolvem manipulação de inteiros grandes, que são um pouco chatas em C++.
De modo geral, a entrada pelo fluxo de entrada padrão do Python pode ser lida com o comando input()
:
x = input()
Porém, input() retorna uma string, com a linha inteira de entrada. Dessa forma, caso queira inteiros, é necessário fazer um casting para int:
x = int(input())
Algumas vezes, pode ser dado um array
inteiro em uma linha para ser lido. Por exemplo, pode ser lido um array de strings da seguinte forma:
l = input().split(' ')
# exemplo de linha no input:
# abc bcd cde
# vai ler: l = ['abc', 'bcd', 'cde']
Caso sejam vários inteiros separados por espaços, pode ser feito o seguinte:
l = list(map(int, input().split()))
# exemplo de linha no input:
# 1 2 3 4
# l = [1, 2, 3, 4]
A formatação de strings pode ser feita facilmente em Python3 com a utilização de f-strings. Por exemplo, antigamente, inserir um inteiro no meio de uma string era feita de forma parecida com C:
cnt = 5
print("cnt vale %d." % cnt)
Agora, com a utilização de f-strings, o código fica mais simples e fácil de ser entendido:
cnt = 5
print(f"cnt vale {cnt}.")
Basta colocar um f
antes da string, e inserir as variáveis entre chaves {var}
. Também é possível adicionar parâmetros a mais, como quantidade de casas após a vírgula em valores de ponto flutuante. Assim, usar f-strings pode facilitar muito, principalmente em problemas que demandam a escrita do output com algum formato em específico.
test_case = 3
answer = 3.586
print(f"Case {test_case}: {answer:.3f}")
Caso você queira testar a saída de seu código de acordo com alguma entrada existente em um arquivo (por exemplo, 1.in), pode ser feito o seguinte (em um ambiente como o terminal Linux ou WSL):