Lesson 4
Para loop com alcance
1. Para loop com alcance
Nas lições anteriores, lidamos com programas e condições sequenciais. Muitas vezes o programa precisa repetir alguns bloqueios várias vezes. É aí que os loops são úteis. Há for e while operadores de loop em Python, nesta lição cobrimos for .
for loop itera sobre qualquer sequência. Por exemplo, qualquer string em Python é uma seqüência de seus personagens, para que possamos interagir sobre eles usando for :
for character in 'hello':
print(character)
Outro caso de uso para um loop for é iterar alguma variável inteira em ordem crescente ou decrescente. Essa sequência de inteiro pode ser criada usando o range(min_value, max_value) funções range(min_value, max_value) :
for i in range(5, 8):
print(i, i ** 2)
print('end of loop')
# 5 25
# 6 36
# 7 49
# fim do loop
O range(min_value, max_value) funções range(min_value, max_value) gera uma sequência com números min_value , min_value + 1 , ..., max_value - 1 . O último número não está incluído.
Há uma forma reduzida de intervalo () - range(max_value) , em cujo caso min_value é implicitamente definido como zero:
for i in range(3):
print(i)
# 0
# 1
# 2
Desta forma podemos repetir algumas ações várias vezes:
for i in range(2 ** 2):
print('Hello, world!')
Mesmo que com if-else, o recuo é o que especifica qual as instruções são controlados por for e quais não são.
Intervalo () pode definir uma sequência vazia, como range(-5) ou range(7, 3) . Neste caso, o for-block não será executado:
for i in range(-5):
print('Hello, world!')
Vamos ter um exemplo mais complexo e somar os inteiros de 1 a n, inclusive.
result = 0
n = 5
for i in range(1, n + 1):
result += i
# este ^^ é a abreviação de
# resultado = resultado + i
print(result)
Preste atenção que o valor máximo em range () é n + 1 para fazer i igual a n na última etapa.
Para iterar em uma sequência decrescente, podemos usar uma forma estendida de intervalo () com três argumentos - range(start_value, end_value, step) . Quando omitido, o passo é implicitamente igual a 1. No entanto, pode ser qualquer valor diferente de zero. O loop sempre inclui start_value e exclui end_value durante a iteração:
for i in range(10, 0, -2):
print(i)
# 10
# 8
# 6
# 4
# 2
2. definindo a função print ()
Por padrão, a funçãoprint() imprime todos os seus argumentos separando-os por um espaço e depois coloca um símbolo de nova linha. Esse comportamento pode ser alterado usando os argumentos de palavra-chave sep (separador) e end .print(1, 2, 3) print(4, 5, 6) print(1, 2, 3, sep=', ', end='. ') print(4, 5, 6, sep=', ', end='. ') print() print(1, 2, 3, sep='', end=' -- ') print(4, 5, 6, sep=' * ', end='.')