Ter uma rotina é bom, eu acho. Se não a gente perde a cabeça sempre tentando inovar, sem contar que um relacionamento construtivo, é aquele que os parceiros possuem objetivos parecidos, em algum aspecto que os 2 julguem importantes (profissional e ideológico), oq fortifica mais ainda essa ideia da vida equilibrada, sempre ter as suas rotinas. Isso nn quer dizer que sempre será uma, já que como humanos, a gente precisa si cuidar, meditar, ter lazer e socializar. Agra deixando o lado chato de lado... eu ri pra caralho com esse comentário. 10/10
Guanabara sua iniciativa é louvável, afinal um curso com essa qualidade gratuito não é para muitos... Obrigado Guanabara continue nos brindando com a sua didática...
Guanabara tenho que te agradecer muiiiiiiiiiiiiiiiiiiiiittttttttttttttttttttooooooooooooooooooo.... Estou participando hoje de um processo seletivo que um banco liberou e a proposta é aprender javascript desde o zero e dps terá um desafio para ir para etapa final. Os participantes podem conseguir empregos nesta empresa. Cheguei na etapa de função e por coincidencia estava aqui estudando Python tbm e justamente a proxima aula é de função. Se eu não tivesse assistido esta aula... jamais (J .... AA... M .. AAAAA... IS... ) conseguiria fazer analogia à linguagem JS e conseguir resolver os exercicios..... putssss... vc é muito bom que consegui aprender JS vendo aula de Python.... Muito Obrigada!!!!1
@@jahnomon2691 supondo q ela andou salvando vídeos na playlist de como declarar imposto de renda, ela passou no processo e ta recebendo mais de 2800 (q é oq é preciso pra pagar imposto kkkk)
porque esse cara não da aula na minha faculdade ? sua didática é simplesmente incrível e de facilidade de entendimento ... aprecio demais sua forma de ensinar .
estava SOFRENDO MUITO pra entender a videoaula de um curso que comprei em que o professor rushou absurdos a parte de def, aqui em 20 minutos entendi perfeitamente, obrigado
depois de muito tempo, completei o curso de Python, agora eu vejo como eu era antigamente, não sabia nada de programação, agora, eu sei até mudar o layout do TH-cam, e vejo que no futuro vou mudar muito. Meu primeiro comentário foi no primeiro vídeo do curso de Python, há *3 meses* e eu aprendi muito coisa em 3 meses, e eu posso falar que, se você quer mesmo aprender a programar, recomendo esse curso primeiro, mas não pare só nele, existe vários vídeos pelo TH-cam que te ajudam a melhorar suas habilidades, sério, nunca pare de evoluir
Na realidade o massa é começar por algoritmo e procurar sites de problemas lógicos. Depois que você estiver bem logicamente é só aprender a documentação da linguagem e fazer cursos de bibliotecas, frameworks e apis.
Fiz algumas anotações dos assuntos tratados nessa aula e do livro "Curso Intensivo de Python" do Eric Matthes do qual venho lendo enquanto faço o curso, caso queiram: FUNÇÕES (Parte 1) - Aula 20 *O que é uma FUNÇÃO no Python? São blocos nomeados de um código designado para fazer um trabalho em específico. Elas permitem que você escreva o código uma vez que poderá ser usado a quantidade de vezes que você precisar para fazer uma mesma função. As funções podem pegar a informação que elas precisam e retornar a informação que elas geram. Então, basicamente é um jeito de tornar os programas fáceis de escrever, ler, testar, e consertar. *Para definir uma função, a primeira linha dela é a sua definição, marcada pela palavra-chave DEF. O nome da função é seguido por um conjunto de parênteses e dois pontos. Uma DOCSTRING, em aspas triplas, descreve o que a função faz. O corpo da função ou o bloco de códigos dela é identado em um nível. Exemplo: def lin(): """Mostra uma linha com trinta hífens seguidos.""" print('-' * 30) *Para chamar uma função, é só você digitar o nome da função seguido por um conjunto de parênteses, como por exemplo: lin() *PARÂMETROS: INFORMAÇÃO QUE É RECEBIDA POR UMA FUNÇÃO, ESTÃO LISTADOS EM PARÊNTESES NA DEFINIÇÃO DA FUNÇÃO. *ARGUMENTOS: INFORMAÇÃO QUE É PASSADA PARA UMA FUNÇÃO, SÃO INCLUÍDOS NOS PARÊNTESES DEPOIS DO NOME DA FUNÇÃO.
(Você pode tratar do jeito que você quiser, eu prefiro separar em parâmetros e argumentos.) *Exemplo de argumentos e parâmetros em uma função: def mostra_titulo(texto): => texto nesse caso é o PARÂMETRO. """Mostra o título de forma elegante.""" print(f'{"=-=" * 10} {texto.upper():^30} {"=-=" * 10}') mostra_titulo('sistema de alunos') => 'sistema de alunos' é uma string que eu defini como ARGUMENTO. *Existem dois tipos de argumentos, que são os posicionais e os argumentos de palavra-chave. Quando você usa argumentos posicionais, Python corresponde ao primeiro argumento na chamada da função com o primeiro parâmetro na definição da função e assim por diante. Com os argumentos de palavra-chave, você específica com qual parâmetro o argumento deve ser atribuído na chamada da função. Quando os argumentos de palavra-chave são usados, a ordem dos argumentos não importa. *Exemplos de argumentos posicionais e de palavra-chave: def mostra_soma(a, b): """Mostra a soma de dois números.""" print(f'A = {a} e B = {b}') s = a + b print(f'A soma A + B = {s}') mostra_soma(4, 5) => Argumentos posicionais. mostra_soma(b=4, a=5) => Argumentos de palavra-chave. *Para passar um número arbitrário de argumentos para um parâmetro, usa-se o operador *. O parâmetro que deve aceitar um número arbitrário de argumentos deve ser o último na definição de uma função. Exemplo: def contador(*num): """Mostra uma quantidade arbitrária de valores em uma tupla.""" print(num) contador(2, 1, 7) contador(4, 4, 7, 6, 2) *Você pode passar uma LISTA como argumento para uma função, e a função pode trabalhar com os valores na lista. Qualquer alteração feita na lista criada pela função afetará a lista original. Para impedir que uma função modifique a lista original, é só passar como argumento uma cópia da lista. Exemplo, passando uma lista como argumento: def dobra(lista): """Dobra os valores da lista.""" pos = 0 while pos < len(lista): lista[pos] *= 2 pos += 1 valores = [6, 3, 9, 1, 0, 2] valores_cópia = valores[:] dobra(valores_cópia) print(valores_cópia) print(valores)
eu vi a questão das funções no curso de algoritmo a menos de 6 meses e posso dizer, vc melhorou muito a didática do seu curso do visualg para esse de python, lá eu n entendi direito oq carambolas era funções e aqui entendi
Muito obrigado professor Guanabara, salvando nossa faculdade de cada dia :) Assisti 2x a vídeo aula da facul e ainda li o material didático e não entendi mt bem, com 15 min de vídeo eu já saquei td
Gustavo obrigado por você existir nas nossas vidas ! Sou formado em analise de sistema e realmente seu cursos são muito bons , quem sabe se eu tivesse aprendido a programar na faculdade com um professor igual a você ,estou estudando por conta própria e com muito estudo e deus nas nossas vidas eu possa a ganhar um emprego na área ! Obrigado por tudo !
37:50 Em C também se pode passar por referência, é o que nós mais fazemos se quisermos trabalhar com listas dinâmicas encadeadas usando alocação dinâmica de memória.
Gustavo, depois de três excelentes cursos de Python que tive acesso, tenho que me render ao seu talento como professor. Espero que volte com esse projeto fantástico. Parabéns e obrigado por compartilhar seu conhecimento de forma tão fácil.
Cara nao acredito que cheguei na aula 20 sem complicacoes! Na primeira vez que tentei desisti na aula 9 no comeco da quarentena decidi comecar a programar. Muito obrigado guanabara, vou aprender outras lingugens no seu canal. Qualidade 1000
Guanabara é surreal a didática meu Deus, não entendi nada na aula da facul, aqui em 50 minutos que te prende de ponta a ponta ele deixa tudo muito leve pra entender...
Cara eu nem sei por onde começar a agradecer o Gustavo. Um breve resumo meu: Tenho 39 anos, faço 40 no final desse ano (2021) Venho tentando aprender Python faz uns 3 anos entre inícios e muitas desistências, Já fiz curso na udemy, 4linux, entre outras, gastei um bom dinheiro com formações e nada! Já estava achando que eu não era capaz, e não pela minha idade e sim por n ser para mim a programação, decide voltar e estudar de novo lógica de programação e dessa vez escolhi o curso do Gustavo Salvador Guanabara, está sendo change life pra mim! É impressionante o quanto o Gustavo é uma pessoa tão iluminada, com energia e vontade de ensinar! Cara gratidão, agora faço coisas que estou achando tão simples e fluidas no python, estou no começo mais uma vez, but agora está andando, inclusive estou até detectando códigos com muita poluição e sabendo que da para melhorar. Certamente vou assinar os cursos premium! Grato!!!
muitos ficam no caminho e eu fui um desses. Achei q nunca desistiria de aprender a programar mas nao consigo mais motivacao para continuar tem quase 2 meses. Me enrrolei no laço for na aula 19 do III mundo. Vcs que dao curso online tem de aprofundar mais nas exlicacoes pois muitos nao tem prof ou faz faculdade. Td q aprende é por aqui.
Cara vc ensina muito bem , sua didática é louvável, não é ninguém que decide fornecer um curso de python totalmente gratuito, agradeço também as pessoas que fizeram esses vídeos serem produzidos. p.s. eu tenho 15anos
exercicio 96 def area(largura, comprimento): area=largura*comprimento print(f'A área de um terreno {largura}X{comprimento} é de {area}m².') l=float(input('LARGURA (m): ')) c=float(input('COMPRIMENTO (m): ')) area(l, c)
cara, seus vídeos são foda d mais, eu estava com muita dificuldade pra entender funções e agora vendo esse vídeo minha cabeça explodiu muito. Obrigado por me ajudar tanto!!!
Guanabara se for possível faça o curso de c no canal, essa linguagem é muito importante, e aprender com vc é bom demais. Obrigado pelo curso de python, q virou minha linguagem de coração graças a vc. Vlw
Pra quem tem dificuldade de entender na velocidade normal, coloca o vídeo na velocidade 1.5x, seu cérebro presta mais atenção em coisas rápidas, com isso a explicação fica mais clara.
Eu nunca vi alguem falar de def tao bem quanto o Guanabara, no meio da aula so com poucas explicaçoes, já veio a mente fazer uma funçao para tabuada: def tabuada(a): for c in range(1, 11): mul = a * c print(mul) tabuada(6)
Eu AMO esse canal. Já comecei curso no Udemy, Codecademy etc e não tem jeito... eu sempre volto pra cá! Sua explicação é a melhor, sem sombra de dúvida! Em nenhuma outra fonte achei aulas tão boas quanto as suas, e pesquisei muito, em inglês e português! Pra quem estiver começando do zero, sempre vou indicar o Curso em Vídeo!
Feliz dia dos professores. Com todo o carinho, respeito e admiração de seu aluno virtual que sabe que você faz a diferença na sua forma de ensinar. Sabemos que num país continental como o nosso, onde existem tantas diferenças sociais, culturais e econômicas, o papel do professor é essencial para disseminação da educação, dando insumos a que as diferenças anteriores diminuam.
Olá. Primeiramente parabéns pelas aulas. Didática fantástica. O meu código fiz da seguinte maneira: def contador(*nun): tam = len(num) print (f’Recebi os valores {num}. São ao todo {tam} números. O maior número entre eles é {max(num)}. ’) cortador(5, 7, 3, 1, 4) cortador(8, 4, 7) cortador(4, 5, 8, 9, 10, 35, 11, 22,, 45)
Guanabara no Mundo 1: - "Sabe essess joguinhos que voce joga aí"? Guanabara Mundo 3: - "Sabe quando uma mulher reclama do relacionamento?" Hahaha figura!
Muito legal essa aula de funções, consegui trasformar a validação de resposta (S/N) que eu aprimorei em uma rotina e consegui até mesmo importá-la: import a_Sim_Não resp = ' ' grupo = [] pessoa = {} while True: pessoa['nome'] = str(input('Nome: ')) pessoa['idade'] = int(input('Idade: ')) grupo.append(pessoa.copy()) a_Sim_Não.quercont() if resp == 'N': break print(grupo) A função é essa (eu coloquei em outro arquivo.py chamado 'a_Sim_Não' ): def quercont(): global resp while True: resp = str(input('Quer continuar? ')).strip().upper() if resp != ' ': resp = resp[0] if resp != ' ' and resp in 'SN': break Eu melhoro os nomes depois kkk
Um exemplo prático pra funções é quando vc ta fazendo um jogo em pygame e cria 3 loops while para conter os estados do jogo. (Tela principal, O jogo propriamente dito, e uma tela de game over.) Cada um desses estados precisa de seu proprio loop while para funcionar (Pq se n chega o final do código e a janela do seu jogo simplesmente fecha) então o que vc pode fazer e criar uma função q lida com cada estado do jogo, e chamar elas em momentos apropriados. (Eu n sei se ficou boa a explicação mas pelo menos eu tentei kk.)
Finalmente cheguei nessa aula 20, queria muito aprender como utilizar funções, obrigado Guanabara, vc tá me ajudando muito a seguir essa carreira de programador, eu estudo numa escola técnica e meu prof é muito teórico, já aqui vc tem a teórica e a prática que são muitas, parabéns 👏
Esse Mundo 3 foi o que eu mais me diverti estudando! Acredito que foi referente à evolução dos meus programas, das minhas ideias e de muitas coisas que aprendi nele que ajudaram a desenvolver algumas coisas que eu pensava em fazer! Muito bom!
#Desafio 096 def área(l,c): a = l * c print(f"A area de um terreno {l}x{c} é de {a:.2f}m²") área(float(input("Digite a largura: ")), float(input("Digite o comprimento: ")))
def area (a,b): area = a * b input(f'Digite a largura do terreno:') input('Digite comprimento do terreno:') print(f'A área de um terreno {a} x {b} é de {area} m2.')
Quando olho pra data de lançamento da aula e do curso me arrependo de não ter iniciado antes. Como eu estaria hoje com esse conhecimento ? Da vontade de chorar, dói na alma😓
Pelo que eu entendi, as rotinas são muito boas para a refatoração de códigos, para facilitar a visualização se por um caso o programa for feito em uma equipe de programadores, serve também para deixar seu código mais apresentável e menos repetitivo, sinceramente fiquei bastante confuso com a aula, mas tô praticando, sei que isso vai ser bastante importante em ambientes corporativos por exemplo, ótima aula Guanabará, sinceramente, a comunidade de programadores aqui do Brasil lhe deve muito, vejo quantas pessoas que querem trabalhar com TI (E eu me incluo nelas) mas não tem muita condição para bancar cursos, principalmente com essa qualidade que você faz, tenho muito a lhe agradecer, principalmente a minha carreira como programador !
Pessoal, eu fiz um aperfeiçoamento no exercício 098, antes e após gerar os números é mostrada uma linha com o tamanho adaptável ao conteúdo, segue a codificação para quem quiser ver o funcionamento, abraço a todos e obrigado Guanabara: from time import sleep def linha(c, n): print(c * n) def contagem(i, f, p): if p == 0: print('Atenção!!!') print('Você informou para o passo o valor 0, foi assumido o valor 1') p = 1 if f < i and p > 0: p *= -1 print(f'Contagem de {i} até {f} de {abs(p)} em {abs(p)}') f = f - 1 if f < i else f + 1 tam = [] for t in range(i, f, p): tam.append(t) ''' a variável nts armazena o conteúdo da lista tam com um espaço entre eles para saber o tamenho para usar na geração da linha. ''' nta = ' ' for j in tam: nta += str(j) + ' ' linha('*', len(nta)) for t in tam: print(f' {t}', end= '', flush=True) sleep(1) print(' ', end='') linha('*', len(nta)) linha('-=', 30) contagem(1, 10, 1) linha('-=', 30) contagem(10, 0, 2) linha('-=', 30) print('Agora é sua vez de personalizar a contagem!') linha('-=', 30) i = int(input('Inicio: ')) f = int(input('Fim: ')) p = int(input('Passo: ')) linha('-=', 30) contagem(i, f, p) linha('-=', 30) Bom curso á todos.
resolvi estes exercícios com facilidade... vamos ver as correções, para ver o que é possível melhorar nas minhas soluções. Colarei os meus códigos nos comentários das soluções dos desafios.
Guanabara... só passando para te desejar atrasado um FELIZ DIA DO PROFESSOR. Nem te conheço mas te considero pra carai. Você é meu professor desde o curso de HTML lá no canal antigo. OBRIGADO PELA GENEROSIDADE DE COMPARTILHAR CONHECIMENTO
passando para engajar, esse canal mudou a minha vida e ta aprovado hehe kkkk obg por existir Guanabara quando terminar esse provavelmente vou te encontrar dnv em outro curso kkkk
96: def area(l, c): a = c * l print(f'A área de um terreno {l}x{c} é de {a}m²') def titulo(ttl): print('-' * 30) print(f'{ttl:^30}') print('-' * 30) titulo('Controle de Terrenos') l = float(input('LARGURA (m): ')) c = float(input('COMPRIMENTO (m): ')) area(l, c)
99: from time import sleep def maior(* num): print('-=' * 30) print('Analisando os valores passados...') sleep(0.8) lista = [] for c in num: lista.append(c) print(c, end=' ', flush=True) sleep(0.3) print(f'Foram informados {len(num)} valores ao todo.') if len(lista) == 0: lista = [0] print(f'O maior valor informado foi {max(lista)}.') maior(2,9,4,5,7,1) maior(4,7,0) maior(1,2) maior(6) maior()
100: from random import randint from time import sleep lista = [] pares = [] def sorteia(): print('Sorteando 5 valores da lista: ', end='') for c in range(1,6): c = randint(1,10) print(c, end=' ', flush=True) sleep(0.5) lista.append(c) print('Pronto!') def somapares(): for c in lista: if c % 2 == 0: pares.append(c) print(f'Somando os valores pares de {lista}, temos {sum(pares)}')
Qual curso q você comprou? Posso dar uma olhadinha. É você tem razão, programadores podem ser autodidatas, mas eu acho legal o estímulo recebido quando se faz um curso técnico
096# def area(a,b): s=a*b print(' 2') print(f'a area de um terreno e {a}x{b} e de {s}m') print('controle de terrenos') largura=float(input('LARGURA (m)')) comprimento=float(input('COMPRIMENTO (m)')) area(largura,comprimento)
Quando vi a execução do exercício 99, pensei que o professor queria que os números fossem randômicos, então fiz um pouco diferente, com duas funções. E uma função é executada dentro da outra. O resultado é o mesmo, mas os números são gerados aleatoriamente: from random import randint from time import sleep def maior(lista): m = c = 0 print('=-' * 25) sleep(1) print('Analisando os valores passados...') for n in lista: c += 1 sleep(0.5) print(n, end=' ') if n > m: m = n print(f' - Ao todo, foram informados {c} números.') sleep(1) print(f' --> O maior número informado foi {m}.') def valor(num): valores = [] c = 0 while c < num: c += 1 valores.append(randint(1, 10)) maior(valores) valor(6) valor(3) valor(2) valor(1) valor(0)
EX 96 def area(l, c): print('==' * 30) a = l * c print(f'a área de um terreno de {l} x {c} é de: {a} m²') print('==' * 30) area(l=float(input('largura(m): ')), c=float(input('Comprimento (m): ')))
#Ex 96 def area(): print('-'*30) print('Calculo da Area') largura =float(input('Digite lagura: ')) altura=float(input('Digite altura: ')) a = largura*altura print(f'O terreno de {largura} m lagura por {altura} m tem area {a} metros quadrados') area()
Estude pelo nosso site e tire certificado de 40 horas. Curso completo em:
www.cursoemvideo.com/curso/python-3-mundo-3/
Quem apoia uma aula ser sobre classes e programação orientada a objetos?
Acho que vai fazer mais la pra frente.
o mundo 4 provavelmente vai ser só isso
toda gente
espero que sim estou me batendo com esse assunto, não que não consiga entender mas coisas como construtor, e tals.
Programação orientada a objeto ja tem
"Não deixe seu relacionamento cair numa rotina"
Guanabara, Gustavo - Professor de Programação e Coach de Relacionamento
kkkkkkkk boa!
@@marcelalima8312 hahaha o cara é mito!
É mais fácil lidar com as funções
Ter uma rotina é bom, eu acho. Se não a gente perde a cabeça sempre tentando inovar, sem contar que um relacionamento construtivo, é aquele que os parceiros possuem objetivos parecidos, em algum aspecto que os 2 julguem importantes (profissional e ideológico), oq fortifica mais ainda essa ideia da vida equilibrada, sempre ter as suas rotinas. Isso nn quer dizer que sempre será uma, já que como humanos, a gente precisa si cuidar, meditar, ter lazer e socializar.
Agra deixando o lado chato de lado... eu ri pra caralho com esse comentário. 10/10
eu ia dar like, aí percebi que já tinha dado o like
Guanabara sua iniciativa é louvável, afinal um curso com essa qualidade gratuito não é para muitos... Obrigado Guanabara continue nos brindando com a sua didática...
@@ItsKapa Mais se não fosse por aqueles não seria gratuito pra min, que não tenho condição de ajudar e faço o curso.
Melhor professor!
Guanabara tenho que te agradecer muiiiiiiiiiiiiiiiiiiiiittttttttttttttttttttooooooooooooooooooo....
Estou participando hoje de um processo seletivo que um banco liberou e a proposta é aprender javascript desde o zero e dps terá um desafio para ir para etapa final. Os participantes podem conseguir empregos nesta empresa.
Cheguei na etapa de função e por coincidencia estava aqui estudando Python tbm e justamente a proxima aula é de função. Se eu não tivesse assistido esta aula... jamais (J .... AA... M .. AAAAA... IS... ) conseguiria fazer analogia à linguagem JS e conseguir resolver os exercicios..... putssss... vc é muito bom que consegui aprender JS vendo aula de Python....
Muito Obrigada!!!!1
Eae, como é q tá hoje
@@jahnomon2691 supondo q ela andou salvando vídeos na playlist de como declarar imposto de renda, ela passou no processo e ta recebendo mais de 2800 (q é oq é preciso pra pagar imposto kkkk)
@ krl, o maluco é detetive
kkkkkkkkkkkkkkkkkkkkkk
@ kkkkkkkkkkkkkkkkkkkk
@ kkkkkkkkkkk
Aula ótima!!! Tenho 15 anos e esse canal já me ajudou muito com PHP, html, java e agr JavaScript. Parabéns a equipe do Curso em Vídeo.
porque esse cara não da aula na minha faculdade ? sua didática é simplesmente incrível e de facilidade de entendimento ... aprecio demais sua forma de ensinar .
estava SOFRENDO MUITO pra entender a videoaula de um curso que comprei em que o professor rushou absurdos a parte de def, aqui em 20 minutos entendi perfeitamente, obrigado
depois de muito tempo, completei o curso de Python, agora eu vejo como eu era antigamente, não sabia nada de programação, agora, eu sei até mudar o layout do TH-cam, e vejo que no futuro vou mudar muito.
Meu primeiro comentário foi no primeiro vídeo do curso de Python, há *3 meses* e eu aprendi muito coisa em 3 meses, e eu posso falar que, se você quer mesmo aprender a programar, recomendo esse curso primeiro, mas não pare só nele, existe vários vídeos pelo TH-cam que te ajudam a melhorar suas habilidades, sério, nunca pare de evoluir
Na realidade o massa é começar por algoritmo e procurar sites de problemas lógicos. Depois que você estiver bem logicamente é só aprender a documentação da linguagem e fazer cursos de bibliotecas, frameworks e apis.
Esses exercícios de função foram bons pra descansar dos últimos de lista, hehe
e o ultimo de dicionario kkkkk
Eu gostei muito de fazer exercícios de lista, agora dicionário eu achei chato pra caraih
Minha cabeça chegou a doer de tanto pensar kkk só fumaça saindo kkkk
@@carloseduardomagela789 Na lista quase desisti,mas no dicionário fiz tudo em 1 dia
Esse agr tbm estou bem travado
@@maicondreams9600 Também detestei.
Fiz algumas anotações dos assuntos tratados nessa aula e do livro "Curso Intensivo de Python" do Eric Matthes do qual venho lendo enquanto faço o curso, caso queiram:
FUNÇÕES (Parte 1) - Aula 20
*O que é uma FUNÇÃO no Python?
São blocos nomeados de um código designado para fazer um trabalho em específico. Elas permitem que você escreva o código uma vez que
poderá ser usado a quantidade de vezes que você precisar para fazer uma mesma função. As funções podem pegar a informação que elas precisam e retornar a informação que elas geram. Então, basicamente é um jeito de tornar os programas fáceis de escrever, ler, testar, e consertar.
*Para definir uma função, a primeira linha dela é a sua definição, marcada pela palavra-chave DEF. O nome da função é seguido por um conjunto
de parênteses e dois pontos. Uma DOCSTRING, em aspas triplas, descreve o que a função faz. O corpo da função ou o bloco de códigos dela é identado em um nível.
Exemplo:
def lin():
"""Mostra uma linha com trinta hífens seguidos."""
print('-' * 30)
*Para chamar uma função, é só você digitar o nome da função seguido por um conjunto de parênteses, como por exemplo: lin()
*PARÂMETROS: INFORMAÇÃO QUE É RECEBIDA POR UMA FUNÇÃO, ESTÃO LISTADOS EM PARÊNTESES NA DEFINIÇÃO DA FUNÇÃO.
*ARGUMENTOS: INFORMAÇÃO QUE É PASSADA PARA UMA FUNÇÃO, SÃO INCLUÍDOS NOS PARÊNTESES DEPOIS DO NOME DA
FUNÇÃO.
(Você pode tratar do jeito que você quiser, eu prefiro separar em parâmetros e argumentos.)
*Exemplo de argumentos e parâmetros em uma função:
def mostra_titulo(texto): => texto nesse caso é o PARÂMETRO.
"""Mostra o título de forma elegante."""
print(f'{"=-=" * 10}
{texto.upper():^30}
{"=-=" * 10}')
mostra_titulo('sistema de alunos') => 'sistema de alunos' é uma string que eu defini como ARGUMENTO.
*Existem dois tipos de argumentos, que são os posicionais e os argumentos de palavra-chave. Quando você usa argumentos posicionais, Python
corresponde ao primeiro argumento na chamada da função com o primeiro parâmetro na definição da função e assim por diante. Com os argumentos de palavra-chave, você específica com qual parâmetro o argumento deve ser atribuído na chamada da função. Quando os argumentos de palavra-chave são usados, a ordem dos argumentos não importa.
*Exemplos de argumentos posicionais e de palavra-chave:
def mostra_soma(a, b):
"""Mostra a soma de dois números."""
print(f'A = {a} e B = {b}')
s = a + b
print(f'A soma A + B = {s}')
mostra_soma(4, 5) => Argumentos posicionais.
mostra_soma(b=4, a=5) => Argumentos de palavra-chave.
*Para passar um número arbitrário de argumentos para um parâmetro, usa-se o operador *. O parâmetro que deve aceitar um número arbitrário
de argumentos deve ser o último na definição de uma função.
Exemplo:
def contador(*num):
"""Mostra uma quantidade arbitrária de valores em uma tupla."""
print(num)
contador(2, 1, 7)
contador(4, 4, 7, 6, 2)
*Você pode passar uma LISTA como argumento para uma função, e a função pode trabalhar com os valores na lista. Qualquer alteração feita na
lista criada pela função afetará a lista original. Para impedir que uma função modifique a lista original, é só passar como argumento uma cópia da lista.
Exemplo, passando uma lista como argumento:
def dobra(lista):
"""Dobra os valores da lista."""
pos = 0
while pos < len(lista):
lista[pos] *= 2
pos += 1
valores = [6, 3, 9, 1, 0, 2]
valores_cópia = valores[:]
dobra(valores_cópia)
print(valores_cópia)
print(valores)
que especie de formula matematica mascarada com programacao e essa?
Ótimas anotações!
Ótimas dicas.
Anotei aqui. Muito obrigado por compartilhar. ;)
Amei, amigo
obrigado, amigo. você é um amigo.
eu vi a questão das funções no curso de algoritmo a menos de 6 meses e posso dizer, vc melhorou muito a didática do seu curso do visualg para esse de python, lá eu n entendi direito oq carambolas era funções e aqui entendi
Com certeza este é o melhor curso de Python da internet até do que cursos pagos...!!
Concordo...
Muito obrigado professor Guanabara, salvando nossa faculdade de cada dia :) Assisti 2x a vídeo aula da facul e ainda li o material didático e não entendi mt bem, com 15 min de vídeo eu já saquei td
Gustavo obrigado por você existir nas nossas vidas !
Sou formado em analise de sistema e realmente seu cursos são muito bons , quem sabe se eu tivesse aprendido a programar na faculdade com um professor igual a você ,estou estudando por conta própria e com muito estudo e deus nas nossas vidas eu possa a ganhar um emprego na área !
Obrigado por tudo !
37:50 Em C também se pode passar por referência, é o que nós mais fazemos se quisermos trabalhar com listas dinâmicas encadeadas usando alocação dinâmica de memória.
Que vídeo incrível! Aplaudi por R$ 2,00 👏
35:40 Meu raciocínio seguiu o de Guanabara. Ahhhh que emoção kkk
def dobra(a):
cont = 0
while cont < len(a):
print(f'{a[cont] * 2} ', end='')
cont += 1
valores = [4, 5, 8, 9, 11]
dobra(valores)
Gustavo, depois de três excelentes cursos de Python que tive acesso, tenho que me render ao seu talento como professor. Espero que volte com esse projeto fantástico. Parabéns e obrigado por compartilhar seu conhecimento de forma tão fácil.
Cara nao acredito que cheguei na aula 20 sem complicacoes! Na primeira vez que tentei desisti na aula 9 no comeco da quarentena decidi comecar a programar. Muito obrigado guanabara, vou aprender outras lingugens no seu canal. Qualidade 1000
Guanabara é surreal a didática meu Deus, não entendi nada na aula da facul, aqui em 50 minutos que te prende de ponta a ponta ele deixa tudo muito leve pra entender...
Valeu!
Aguardando o Mundo 4 de Python! Obrigada pelas aulas, Guanabara. Sempre me ajudam muito!
Cara eu nem sei por onde começar a agradecer o Gustavo.
Um breve resumo meu:
Tenho 39 anos, faço 40 no final desse ano (2021)
Venho tentando aprender Python faz uns 3 anos entre inícios e muitas desistências, Já fiz curso na udemy, 4linux, entre outras, gastei um bom dinheiro com formações e nada!
Já estava achando que eu não era capaz, e não pela minha idade e sim por n ser para mim a programação, decide voltar e estudar de novo lógica de programação e dessa vez escolhi o curso do Gustavo Salvador Guanabara, está sendo change life pra mim!
É impressionante o quanto o Gustavo é uma pessoa tão iluminada, com energia e vontade de ensinar!
Cara gratidão, agora faço coisas que estou achando tão simples e fluidas no python, estou no começo mais uma vez, but agora está andando, inclusive estou até detectando códigos com muita poluição e sabendo que da para melhorar.
Certamente vou assinar os cursos premium!
Grato!!!
Como você está?
muitos ficam no caminho e eu fui um desses. Achei q nunca desistiria de aprender a programar mas nao consigo mais motivacao para continuar tem quase 2 meses. Me enrrolei no laço for na aula 19 do III mundo. Vcs que dao curso online tem de aprofundar mais nas exlicacoes pois muitos nao tem prof ou faz faculdade. Td q aprende é por aqui.
*ESPEREI ESSE VIDEO MAIS Q MEU ANIVERSARIO
Muito obrigado professor Gustavo Guanabara, que Deus o aboençoe sempre. tmj
Cara! realmente você ta fazendo a diferença na vida das pessoas, ajudado elas a criarem novas soluções. O trabalho de vcs é incrivel
Cara vc ensina muito bem , sua didática é louvável, não é ninguém que decide fornecer um curso de python totalmente gratuito, agradeço também as pessoas que fizeram esses vídeos serem produzidos. p.s. eu tenho 15anos
Estava fazendo um curso e não entendia o que era def, vi 10 minutos do video ja entendi, otima didática, parabéns e obrigado
Colaboradores, muito obrigada! EU AMO VOCÊS, seus lindos ❤️
Meu deus to sentindo que eu to melhorando muito. Consegui fazer todos os exercicios sem olhar a resposta. GG!
exercicio 96
def area(largura, comprimento):
area=largura*comprimento
print(f'A área de um terreno {largura}X{comprimento} é de {area}m².')
l=float(input('LARGURA (m): '))
c=float(input('COMPRIMENTO (m): '))
area(l, c)
obrigado guanabaro, vc me ajudou a encontrar um estágio com seus cursos
cara, seus vídeos são foda d mais, eu estava com muita dificuldade pra entender funções e agora vendo esse vídeo minha cabeça explodiu muito. Obrigado por me ajudar tanto!!!
Guanabara se for possível faça o curso de c no canal, essa linguagem é muito importante, e aprender com vc é bom demais.
Obrigado pelo curso de python, q virou minha linguagem de coração graças a vc. Vlw
ele fez(e provavelmente ainda esta fazendo) no estudonauta, veja o apoia-se
MANO, QUEEEEE KKKKKMKKK, to começando esse curso, terminei o primeiro mundo agora, e ainda não acabou... na moral, mt brabo, parabéns mesmo
Finalmente Cheguei nas Funções!!!!!!!!!!!!!!!!!!!!!!!!!
Essa foi minha sensação tbm. Estava louco para chegar nessa aula!
Finalmente, eu aprendi como o comando def funciona.
Obrigado!
guanabara vc é perfeito eu te amo merece tudo esse curso de milhões
Pra quem tem dificuldade de entender na velocidade normal, coloca o vídeo na velocidade 1.5x, seu cérebro presta mais atenção em coisas rápidas, com isso a explicação fica mais clara.
Eu nunca vi alguem falar de def tao bem quanto o Guanabara, no meio da aula so com poucas explicaçoes, já veio a mente fazer uma funçao para tabuada:
def tabuada(a):
for c in range(1, 11):
mul = a * c
print(mul)
tabuada(6)
Eu AMO esse canal. Já comecei curso no Udemy, Codecademy etc e não tem jeito... eu sempre volto pra cá! Sua explicação é a melhor, sem sombra de dúvida! Em nenhuma outra fonte achei aulas tão boas quanto as suas, e pesquisei muito, em inglês e português! Pra quem estiver começando do zero, sempre vou indicar o Curso em Vídeo!
Guanabara, você não é um professor, você é um pai
Feliz dia dos professores. Com todo o carinho, respeito e admiração de seu aluno virtual que sabe que você faz a diferença na sua forma de ensinar. Sabemos que num país continental como o nosso, onde existem tantas diferenças sociais, culturais e econômicas, o papel do professor é essencial para disseminação da educação, dando insumos a que as diferenças anteriores diminuam.
Ex 097:
def escreva(txt):
comp = len(txt) + 4
print('~' * comp)
print(f' {txt} ')
print('~' * comp)
escreva('Olá mundo !')
escreva('A indisponibilidade de bons profissionais também freia o crescimento')
Olá. Primeiramente parabéns pelas aulas.
Didática fantástica.
O meu código fiz da seguinte maneira:
def contador(*nun):
tam = len(num)
print (f’Recebi os valores {num}.
São ao todo {tam} números.
O maior número entre eles é {max(num)}.
’)
cortador(5, 7, 3, 1, 4)
cortador(8, 4, 7)
cortador(4, 5, 8, 9, 10, 35, 11, 22,, 45)
Guanabara no Mundo 1:
- "Sabe essess joguinhos que voce joga aí"?
Guanabara Mundo 3:
- "Sabe quando uma mulher reclama do relacionamento?"
Hahaha figura!
KKKKK
Muito legal essa aula de funções, consegui trasformar a validação de resposta (S/N) que eu aprimorei em uma rotina e consegui até mesmo importá-la:
import a_Sim_Não
resp = ' '
grupo = []
pessoa = {}
while True:
pessoa['nome'] = str(input('Nome: '))
pessoa['idade'] = int(input('Idade: '))
grupo.append(pessoa.copy())
a_Sim_Não.quercont()
if resp == 'N':
break
print(grupo)
A função é essa (eu coloquei em outro arquivo.py chamado 'a_Sim_Não' ):
def quercont():
global resp
while True:
resp = str(input('Quer continuar? ')).strip().upper()
if resp != ' ':
resp = resp[0]
if resp != ' ' and resp in 'SN':
break
Eu melhoro os nomes depois kkk
Um exemplo prático pra funções é quando vc ta fazendo um jogo em pygame e cria 3 loops while para conter os estados do jogo. (Tela principal, O jogo propriamente dito, e uma tela de game over.) Cada um desses estados precisa de seu proprio loop while para funcionar (Pq se n chega o final do código e a janela do seu jogo simplesmente fecha) então o que vc pode fazer e criar uma função q lida com cada estado do jogo, e chamar elas em momentos apropriados. (Eu n sei se ficou boa a explicação mas pelo menos eu tentei kk.)
apoie com pouquinho mas apoiei. Ja aprendi muito nesse canal, amo e sou grata!
Sua maneira ímpar de ensinar tem me ajudado muito a entender coisas que não conseguia antes.
Finalmente cheguei nessa aula 20, queria muito aprender como utilizar funções, obrigado Guanabara, vc tá me ajudando muito a seguir essa carreira de programador, eu estudo numa escola técnica e meu prof é muito teórico, já aqui vc tem a teórica e a prática que são muitas, parabéns 👏
Guanabara, melhor explicação que já vi sobre funções em Python. Parabéns!
PQP Guanabara, que didática foda! Com vc programar se torna fácil
Hey Guanabara, vc manja muito!
Comprei um curso online, mas sempre venho aqui para realmente compreender o assunto, não tem aula melhor do assunto (minha opnião kkk) para aprender
Esse Mundo 3 foi o que eu mais me diverti estudando! Acredito que foi referente à evolução dos meus programas, das minhas ideias e de muitas coisas que aprendi nele que ajudaram a desenvolver algumas coisas que eu pensava em fazer! Muito bom!
Nossa, realmente vejo a dedicação e o carinho que vcs do Curso em Vídeo investem nos projetos e nas aulas.
Muito grata!
Vi vários videos. Esse foi o melhor. Conseguir entender. Perfeito. Obrigada. S2
Cara, FANTÁSTICO!!!! Super aula.
#Desafio 096
def área(l,c):
a = l * c
print(f"A area de um terreno {l}x{c} é de {a:.2f}m²")
área(float(input("Digite a largura: ")), float(input("Digite o comprimento: ")))
Melhor exemplo do Gustavo:
"sabe quando sua esposa diz, 'aih, nosso relacionamento virou uma rotina :( ' "
Professor, obrigado por tudo, essas aulas são de alta qualidade.
melhor professor, quem concorda respira
Guanabara meu muitíssimo obrigado pela sua colaboração ao nosso conhecimento! Você um professor excepcional
Mds Gustavo tens o dom de ensinar
Eu amo-te meu
def area (a,b):
area = a * b
input(f'Digite a largura do terreno:')
input('Digite comprimento do terreno:')
print(f'A área de um terreno {a} x {b} é de {area} m2.')
Quando olho pra data de lançamento da aula e do curso me arrependo de não ter iniciado antes. Como eu estaria hoje com esse conhecimento ? Da vontade de chorar, dói na alma😓
O melhor momento para plantar uma árvore foi há 20 anos atrás. O segundo melhor momento é agora
Tu tens o dom
Gustavo Guanabara, eu te amo
Pelo que eu entendi, as rotinas são muito boas para a refatoração de códigos, para facilitar a visualização se por um caso o programa for feito em uma equipe de programadores, serve também para deixar seu código mais apresentável e menos repetitivo, sinceramente fiquei bastante confuso com a aula, mas tô praticando, sei que isso vai ser bastante importante em ambientes corporativos por exemplo, ótima aula Guanabará, sinceramente, a comunidade de programadores aqui do Brasil lhe deve muito, vejo quantas pessoas que querem trabalhar com TI (E eu me incluo nelas) mas não tem muita condição para bancar cursos, principalmente com essa qualidade que você faz, tenho muito a lhe agradecer, principalmente a minha carreira como programador !
Na primeira vez, função é bastante estranho. Conforme você vai utilizando, vai ficar cada vez mais fácil!
Pessoal, eu fiz um aperfeiçoamento no exercício 098, antes e após gerar os números é mostrada uma linha com o tamanho adaptável ao conteúdo, segue a codificação para quem quiser ver o funcionamento, abraço a todos e obrigado Guanabara:
from time import sleep
def linha(c, n):
print(c * n)
def contagem(i, f, p):
if p == 0:
print('Atenção!!!')
print('Você informou para o passo o valor 0, foi assumido o valor 1')
p = 1
if f < i and p > 0:
p *= -1
print(f'Contagem de {i} até {f} de {abs(p)} em {abs(p)}')
f = f - 1 if f < i else f + 1
tam = []
for t in range(i, f, p):
tam.append(t)
'''
a variável nts armazena o conteúdo da lista tam com um espaço entre eles para saber o tamenho
para usar na geração da linha.
'''
nta = ' '
for j in tam:
nta += str(j) + ' '
linha('*', len(nta))
for t in tam:
print(f' {t}', end= '', flush=True)
sleep(1)
print('
', end='')
linha('*', len(nta))
linha('-=', 30)
contagem(1, 10, 1)
linha('-=', 30)
contagem(10, 0, 2)
linha('-=', 30)
print('Agora é sua vez de personalizar a contagem!')
linha('-=', 30)
i = int(input('Inicio: '))
f = int(input('Fim: '))
p = int(input('Passo: '))
linha('-=', 30)
contagem(i, f, p)
linha('-=', 30)
Bom curso á todos.
Valeu Guanabara, mais uma que tô aprendendo.
Meu pai faz parte,ele se chama Guilherme Henrique Scarazzato Ostrock,ele falou que isso ia me ajudar,e está funcionando
*Criando funções e input*
def Título(txt):
print('-' * 30)
print(txt)
print('-' * 30)
esc=input("Digite um título: ")
Título(esc)
def Soma(n1, n2):
print('A soma é', s)
n1=int(input("Digite um número: "))
n2=int(input("Digite outro: "))
s=n1+n2
Soma(n1, n2)
Gente, esse prof é super!!! 👏👏👏🎉
28:14 se vocês querem fazer mais organizado, se por acaso tiver duas somas, façam assim: print(f'o valor da soma A + B = {s]
')
Parabens pela didática!! Comunicar bem é o sucesso!
Excelente aula, Mestre GG. Os meus agradecimentos e congratulações.
resolvi estes exercícios com facilidade... vamos ver as correções, para ver o que é possível melhorar nas minhas soluções. Colarei os meus códigos nos comentários das soluções dos desafios.
Guanabara... só passando para te desejar atrasado um FELIZ DIA DO PROFESSOR. Nem te conheço mas te considero pra carai. Você é meu professor desde o curso de HTML lá no canal antigo. OBRIGADO PELA GENEROSIDADE DE COMPARTILHAR CONHECIMENTO
Feliz dia do professor, Guanabara!
passando para engajar, esse canal mudou a minha vida e ta aprovado hehe kkkk obg por existir Guanabara quando terminar esse provavelmente vou te encontrar dnv em outro curso kkkk
96:
def area(l, c):
a = c * l
print(f'A área de um terreno {l}x{c} é de {a}m²')
def titulo(ttl):
print('-' * 30)
print(f'{ttl:^30}')
print('-' * 30)
titulo('Controle de Terrenos')
l = float(input('LARGURA (m): '))
c = float(input('COMPRIMENTO (m): '))
area(l, c)
99:
from time import sleep
def maior(* num):
print('-=' * 30)
print('Analisando os valores passados...')
sleep(0.8)
lista = []
for c in num:
lista.append(c)
print(c, end=' ', flush=True)
sleep(0.3)
print(f'Foram informados {len(num)} valores ao todo.')
if len(lista) == 0:
lista = [0]
print(f'O maior valor informado foi {max(lista)}.')
maior(2,9,4,5,7,1)
maior(4,7,0)
maior(1,2)
maior(6)
maior()
100:
from random import randint
from time import sleep
lista = []
pares = []
def sorteia():
print('Sorteando 5 valores da lista: ', end='')
for c in range(1,6):
c = randint(1,10)
print(c, end=' ', flush=True)
sleep(0.5)
lista.append(c)
print('Pronto!')
def somapares():
for c in lista:
if c % 2 == 0:
pares.append(c)
print(f'Somando os valores pares de {lista}, temos {sum(pares)}')
Finalmenteeeeee.
Demorou tanto que eu já aprendi o assunto. Mas vou assistir...
Tbm, mas ainda preciso aprender classes.
Classe é simples bro. To terminando, agora partiu interface com kivyyyyy
Jefferson tu manja do assunto, é aluno de informática ou CC?
@@b3njamim Cara, comprei um curso na udemy tem uma semana e ja terminei a materia de POO. Não precisa fazer nada disso pra saber essas coisas
Qual curso q você comprou? Posso dar uma olhadinha. É você tem razão, programadores podem ser autodidatas, mas eu acho legal o estímulo recebido quando se faz um curso técnico
assisti uma vez, achei q entendi, so consegui fazer o 96, vou rever agr aq a aula pra tentar resolver
todos sem cola alguma
Este homem é um santo.
096
def area(a,b):
result = a*b
return result
n1 = float(input('Largura: '))
n2 = float(input('Comprimento: '))
resultado = area(n1,n2)
print(resultado)
Até que fim funções puts!
Tava fazedo o curso do ignorância zero enquanto esperava sair próxima aula!
Somos 2 hahahahaha
O Guanabara parece tão triste na velocidade normal depois que você acostuma com a velocidade x2
eu também assisto em x2 kkkkkk
Sim ahuashuasuhashuahas
Da pra entender nada 2x kk
Assisto em 1.5x. 2x ele deve falar igual o Raplord
1.25 e 1.50 é melhor na real
096#
def area(a,b):
s=a*b
print(' 2')
print(f'a area de um terreno e {a}x{b} e de {s}m')
print('controle de terrenos')
largura=float(input('LARGURA (m)'))
comprimento=float(input('COMPRIMENTO (m)'))
area(largura,comprimento)
Que vídeo maravilhoso! Obrigada pela aula
Depois de 4 anos após esse vídeo, continua ajudando muita gente, to perdido na faculdade com uma didática problemática, seus vídeos me deram uma luz
Quando vi a execução do exercício 99, pensei que o professor queria que os números fossem randômicos, então fiz um pouco diferente, com duas funções. E uma função é executada dentro da outra. O resultado é o mesmo, mas os números são gerados aleatoriamente:
from random import randint
from time import sleep
def maior(lista):
m = c = 0
print('=-' * 25)
sleep(1)
print('Analisando os valores passados...')
for n in lista:
c += 1
sleep(0.5)
print(n, end=' ')
if n > m:
m = n
print(f' - Ao todo, foram informados {c} números.')
sleep(1)
print(f' --> O maior número informado foi {m}.')
def valor(num):
valores = []
c = 0
while c < num:
c += 1
valores.append(randint(1, 10))
maior(valores)
valor(6)
valor(3)
valor(2)
valor(1)
valor(0)
EX 96
def area(l, c):
print('==' * 30)
a = l * c
print(f'a área de um terreno de {l} x {c} é de: {a} m²')
print('==' * 30)
area(l=float(input('largura(m): ')),
c=float(input('Comprimento (m): ')))
#Ex 96
def area():
print('-'*30)
print('Calculo da Area')
largura =float(input('Digite lagura: '))
altura=float(input('Digite altura: '))
a = largura*altura
print(f'O terreno de {largura} m lagura por {altura} m tem area {a} metros quadrados')
area()
Guanabara você é incrível
Editor da direita no minuto 48:10 com a mente da 5° série rindo após essa frase do Prof. Guanabara kkkk
Esse cara é o pai da didática.
Consegui chegar em funçoes, viva!