1
resposta

não existe end for ou wend em python?

Em C, ou algumas outras linguas você precisa estabelecer o limite de um loop com wend ou endfor, etc.. parece bem essencial em alguns casos em que você precisa colocar condicionais uma dentro da outra. como o python sabe onde o for ou while acaba? como posso forçar uma região diferente de loop? essas funções existem no python?

1 resposta

Olá, Bruno! Bom dia!

Bom, em C, na realidade, o limite de um loop é dado pelo fechamento do bloco, ao final da chave, e no Python funciona da exata mesma forma (quase).

Em python, os blocos são delimitados pela identação (4 espaços seguidos), e não por chaves, mas é desse modo que o Python sabe quando um bloco começa ou termina, seja ele um laço, uma condicional, definição de função, ou de classe, e isso tudo é avaliado em tempo de "compilação" (antes do python ser executado).

Não entendi a pergunta de como posso forçar uma região diferente de loop? , caso possa explicar melhor o que quis dizer, ficarei feliz em tirar sua dúvida.

Caso você precise colocar uma condicional dentro de outra, você fará da mesma forma, adicionando mais identações, como por exemplo:

if a == 5:
    print(a)
    if b == 31:
        for i in a:
            print('vermelho',  i)
elif a > 10:
    print('grande')
else:
    print('jabuticaba')

Em C, isso seria algo como (meu C está enferrujado, mas é algo assim):

if (a == 5) {
    printf("%d", a)
    if (b == 31) {
        for (int i = 0; i < a; i++) {
            printf("vermelho %d", i)
        }
    }
}
else {
    if (a > 10) {
        printf("grande")
    }
    else {
        printf("jabuticaba")
    }
}

Talvez tenha algum erro nesse C, mas é algo do gênero.

Caso tenha mais dúvidas, fico feliz em ajudar.