Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Lista = None

Alguém me explica essa parte da aula que eu não entendi? O que significa esse lista = None Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Boa tarde, Marconi! Tudo certinho?

Vamos por partes, na hora de declarar a função faz() foi passado o parâmetro lista, até ai tudo bem, porem esse parâmetro está recebendo um valor já, o None, então oq acontece com o programa quando ele lê essa informação?

funcao(parametro = alguma_informacao):
    ...

Ele vira o valor padrão desse parâmetro, então toda vez que for chamar a função faz() sem nenhum argumento, ou seja com o () vazio, o computador entende que a variável lista vai receber o None.

Seguindo o código podemos ver que ele faz um teste para ver se passaram algum argumento para a função, caso alguém chame ela sem deixar um argumento como no caso teste do faz(), a condição vira verdadeira e ele cria uma lista e adiciona na variável lista, mas se por acaso tivesse chamado a função com faz([1,2,3]) ao invés de somente faz()? Bem ele ignoraria o None já que foi passado um valor como argumento, seguindo linha a linha do código normalmente, ia checar se a lista é None e como não é vazia, vai mostrar o tamanho da lista ([1,2,3]) que passamos como argumento, imprimir a lista e depois adicionar o inteiro 13 na lista.

Bem espero que não tenha ficado confuso e deu para entender bem kkk deixar um link de uma pergunta parecida no stackoverflow, sempre é bom ver mais de uma explicação sobre, quem sabe pode ajudar tbm

https://pt.stackoverflow.com/questions/430641/como-colocar-default-em-par%C3%A2metros-quando-se-especifica-o-tipo-do-objeto