[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:07.95,0:00:09.07,Default,,0000,0000,0000,,A gente deu o nosso primeiro passo Dialogue: 0,0:00:09.07,0:00:11.36,Default,,0000,0000,0000,,no reaproveitamento \Nde código com as funções Dialogue: 0,0:00:11.36,0:00:13.56,Default,,0000,0000,0000,,e entendeu também \Ncomo usar os parâmetros. Dialogue: 0,0:00:13.56,0:00:15.04,Default,,0000,0000,0000,,Mas agora está na hora\Nda gente dar uma olhada Dialogue: 0,0:00:15.04,0:00:18.38,Default,,0000,0000,0000,,em um outro tipo de parâmetro\Nque permite que a gente informe dados Dialogue: 0,0:00:18.38,0:00:20.52,Default,,0000,0000,0000,,de uma forma um pouco diferente. Dialogue: 0,0:00:20.52,0:00:22.86,Default,,0000,0000,0000,,Está na hora da gente\Nolhar um pouco os Args. Dialogue: 0,0:00:22.86,0:00:26.36,Default,,0000,0000,0000,,A gente já sabe que as funções\Nservem para que a gente isole Dialogue: 0,0:00:26.36,0:00:27.90,Default,,0000,0000,0000,,e reaproveite o código, Dialogue: 0,0:00:27.90,0:00:30.74,Default,,0000,0000,0000,,e que a gente também pode\Ninformar parâmetros para elas. Dialogue: 0,0:00:30.74,0:00:32.82,Default,,0000,0000,0000,,Não há necessariamente\Numa quantidade limite Dialogue: 0,0:00:32.82,0:00:34.77,Default,,0000,0000,0000,,de parâmetros\Nque a gente pode informar, Dialogue: 0,0:00:34.77,0:00:37.27,Default,,0000,0000,0000,,desde que a gente especifique\Neles corretamente Dialogue: 0,0:00:37.27,0:00:38.63,Default,,0000,0000,0000,,na assinatura do método. Dialogue: 0,0:00:38.63,0:00:39.67,Default,,0000,0000,0000,,E calma. Dialogue: 0,0:00:39.67,0:00:41.67,Default,,0000,0000,0000,,Quando a gente fala assinatura\Ndo método, Dialogue: 0,0:00:41.67,0:00:44.23,Default,,0000,0000,0000,,a gente está basicamente\Nfalando daquela primeira linha, Dialogue: 0,0:00:44.23,0:00:47.20,Default,,0000,0000,0000,,aonde a gente define o nome\Ne os parâmetros da função, Dialogue: 0,0:00:47.20,0:00:51.29,Default,,0000,0000,0000,,que, por acaso, a gente pode\Nespecificar quantos a gente quiser. Dialogue: 0,0:00:51.29,0:00:53.76,Default,,0000,0000,0000,,Basta que a gente coloque\Nos seus nomes adequados. Dialogue: 0,0:00:53.76,0:00:57.46,Default,,0000,0000,0000,,Por exemplo, nome, idade\Nou qualquer outra informação Dialogue: 0,0:00:57.46,0:01:00.07,Default,,0000,0000,0000,,que a gente queira usar dentro\Ndaquela função. Dialogue: 0,0:01:00.07,0:01:03.02,Default,,0000,0000,0000,,E, lembra, o nome que a gente\Ncolocar na assinatura Dialogue: 0,0:01:03.02,0:01:05.92,Default,,0000,0000,0000,,é como a gente vai referenciá-las\Ndentro do bloco da função. Dialogue: 0,0:01:05.92,0:01:08.26,Default,,0000,0000,0000,,Na maioria dos casos,\Na gente vai ter bem claro Dialogue: 0,0:01:08.26,0:01:10.31,Default,,0000,0000,0000,,quais são as informações\Nque a gente precisa Dialogue: 0,0:01:10.31,0:01:12.63,Default,,0000,0000,0000,,para executar um determinado\Nbloco de código Dialogue: 0,0:01:12.63,0:01:13.97,Default,,0000,0000,0000,,dentro de uma função. Dialogue: 0,0:01:13.97,0:01:15.82,Default,,0000,0000,0000,,E isso, na verdade, é a regra. Dialogue: 0,0:01:15.82,0:01:18.12,Default,,0000,0000,0000,,A gente precisa saber\Nquais são as informações Dialogue: 0,0:01:18.12,0:01:20.95,Default,,0000,0000,0000,,para que a gente saiba\Ncomo lidar com elas dentro do código. Dialogue: 0,0:01:20.95,0:01:23.13,Default,,0000,0000,0000,,Mas existem alguns\Ncenários em que, Dialogue: 0,0:01:23.13,0:01:26.10,Default,,0000,0000,0000,,embora a gente saiba quais\Ninformações a gente precisa, Dialogue: 0,0:01:26.10,0:01:29.17,Default,,0000,0000,0000,,a gente não sabe exatamente\Nquantas informações vão vir. Dialogue: 0,0:01:29.17,0:01:33.00,Default,,0000,0000,0000,,E calma, eu sei que está um pouco\Nconfuso, mas você já já vai entender. Dialogue: 0,0:01:33.00,0:01:36.06,Default,,0000,0000,0000,,Imagina que você tem uma função\Nque tem que receber um nome Dialogue: 0,0:01:36.06,0:01:37.88,Default,,0000,0000,0000,,e exibir uma mensagem\Ncom esse nome. Dialogue: 0,0:01:37.88,0:01:40.29,Default,,0000,0000,0000,,Está bem claro aqui como\Né que as coisas vão funcionar. Dialogue: 0,0:01:40.29,0:01:43.13,Default,,0000,0000,0000,,Dentro dos parâmetros, a gente vai\Nter uma variável que representa o nome Dialogue: 0,0:01:43.13,0:01:45.43,Default,,0000,0000,0000,,e a gente vai usar\Nela dentro da nossa função. Dialogue: 0,0:01:45.43,0:01:46.28,Default,,0000,0000,0000,,Simples. Dialogue: 0,0:01:46.28,0:01:50.28,Default,,0000,0000,0000,,Por outro lado, imagina que a gente\Nvai calcular alguma média. Dialogue: 0,0:01:50.28,0:01:52.43,Default,,0000,0000,0000,,A gente sabe como é feito\No cálculo de média. Dialogue: 0,0:01:52.43,0:01:55.49,Default,,0000,0000,0000,,A gente soma, por exemplo,\Ntodas as notas de um aluno Dialogue: 0,0:01:55.49,0:01:59.35,Default,,0000,0000,0000,,e divide essa somatória\Npela quantidade de notas totais. Dialogue: 0,0:01:59.35,0:02:01.05,Default,,0000,0000,0000,,A gente pode, sem problema nenhum, Dialogue: 0,0:02:01.05,0:02:03.67,Default,,0000,0000,0000,,implementar uma função\Nque recebe dois valores. Dialogue: 0,0:02:03.67,0:02:06.03,Default,,0000,0000,0000,,A gente vai, então, pegar\Nesses valores, somar, Dialogue: 0,0:02:06.03,0:02:08.56,Default,,0000,0000,0000,,e o que der de resultado,\Na gente divide por dois. Dialogue: 0,0:02:08.56,0:02:09.83,Default,,0000,0000,0000,,Mas pensa aqui comigo. Dialogue: 0,0:02:09.83,0:02:11.41,Default,,0000,0000,0000,,A gente está trabalhando com Python, Dialogue: 0,0:02:11.41,0:02:14.18,Default,,0000,0000,0000,,e diversas possibilidades\Nestão na palma da nossa mão. Dialogue: 0,0:02:14.18,0:02:16.53,Default,,0000,0000,0000,,Então, por que, ao invés de a gente\Nimplementar uma função Dialogue: 0,0:02:16.53,0:02:19.26,Default,,0000,0000,0000,,que lida com duas notas,\Na gente implementa uma função Dialogue: 0,0:02:19.26,0:02:21.24,Default,,0000,0000,0000,,que lida com qualquer\Nquantidade de notas Dialogue: 0,0:02:21.24,0:02:22.70,Default,,0000,0000,0000,,que a gente quiser informar? Dialogue: 0,0:02:22.70,0:02:23.71,Default,,0000,0000,0000,,Vamos lá, então. Dialogue: 0,0:02:23.71,0:02:26.01,Default,,0000,0000,0000,,Aqui no VS Code, a gente\Njá tem um código inicial, Dialogue: 0,0:02:26.01,0:02:28.36,Default,,0000,0000,0000,,que é aquele nosso primeiro\Nexemplo que a gente comentou. Dialogue: 0,0:02:28.36,0:02:31.05,Default,,0000,0000,0000,,A gente tem uma função simples,\Nque recebe um parâmetro, Dialogue: 0,0:02:31.05,0:02:33.37,Default,,0000,0000,0000,,e ele é usado aqui para montar\Nalguma mensagem. Dialogue: 0,0:02:33.37,0:02:35.27,Default,,0000,0000,0000,,Se a gente exibir\Naqui o nosso código, Dialogue: 0,0:02:35.27,0:02:36.96,Default,,0000,0000,0000,,ou melhor, executar\No nosso código, Dialogue: 0,0:02:36.96,0:02:39.91,Default,,0000,0000,0000,,a gente consegue ver que a mensagem\Né exibida com sucesso, Dialogue: 0,0:02:39.91,0:02:43.67,Default,,0000,0000,0000,,e na invocação da função,\Na gente passa apenas um parâmetro, Dialogue: 0,0:02:43.67,0:02:45.51,Default,,0000,0000,0000,,que no nosso caso\Né o valor mundo. Dialogue: 0,0:02:45.51,0:02:48.65,Default,,0000,0000,0000,,Olha o que acontece se a gente\Ntentar passar aqui, por exemplo, Dialogue: 0,0:02:48.65,0:02:49.75,Default,,0000,0000,0000,,um outro valor. Dialogue: 0,0:02:49.75,0:02:52.46,Default,,0000,0000,0000,,Por exemplo, aluno,\Nque é uma outra string. Dialogue: 0,0:02:52.46,0:02:54.44,Default,,0000,0000,0000,,Repara que o Python dá um erro, Dialogue: 0,0:02:54.44,0:02:56.94,Default,,0000,0000,0000,,porque a gente especificou\Nque essa função recebe Dialogue: 0,0:02:56.94,0:02:59.97,Default,,0000,0000,0000,,apenas um argumento, ou seja,\Num parâmetro, Dialogue: 0,0:02:59.97,0:03:01.82,Default,,0000,0000,0000,,mas dois foram informados. Dialogue: 0,0:03:01.82,0:03:04.34,Default,,0000,0000,0000,,E é exatamente o que a gente\Nvai querer fazer já já. Dialogue: 0,0:03:04.34,0:03:06.98,Default,,0000,0000,0000,,Eu vou começar, então,\Neditando o nome dessa função Dialogue: 0,0:03:06.98,0:03:09.22,Default,,0000,0000,0000,,para que faça mais sentido\Ncom o que a gente quer fazer. Dialogue: 0,0:03:09.22,0:03:11.55,Default,,0000,0000,0000,,Aqui no nosso caso é fazer\No cálculo de uma média. Dialogue: 0,0:03:11.55,0:03:13.92,Default,,0000,0000,0000,,Então, eu vou vir aqui\Ne vou editar o nome dela Dialogue: 0,0:03:13.92,0:03:17.39,Default,,0000,0000,0000,,para ficar "calcular_media"". Dialogue: 0,0:03:17.39,0:03:18.15,Default,,0000,0000,0000,,E pronto. Dialogue: 0,0:03:18.15,0:03:21.26,Default,,0000,0000,0000,,Ao invés de um nome,\Neu vou receber as notas aqui. Dialogue: 0,0:03:21.26,0:03:23.00,Default,,0000,0000,0000,,E é aqui que vem a chave. Dialogue: 0,0:03:23.00,0:03:26.06,Default,,0000,0000,0000,,Quando eu especifico os meus\Nparâmetros dessa forma, Dialogue: 0,0:03:26.06,0:03:29.23,Default,,0000,0000,0000,,eu estou informando para o Python\Nparâmetros posicionais Dialogue: 0,0:03:29.23,0:03:31.73,Default,,0000,0000,0000,,com uma quantidade\Nespecífica de itens. Dialogue: 0,0:03:31.73,0:03:35.90,Default,,0000,0000,0000,,Mas agora a gente vai usar\Numa técnica chamada Args do Python, Dialogue: 0,0:03:35.90,0:03:37.50,Default,,0000,0000,0000,,que permite que a gente \Ninforme para ele Dialogue: 0,0:03:37.50,0:03:39.75,Default,,0000,0000,0000,,que esse parâmetro\Né um parâmetro especial Dialogue: 0,0:03:39.75,0:03:42.68,Default,,0000,0000,0000,,e que vai receber uma quantidade\Nnão exata de itens. Dialogue: 0,0:03:42.68,0:03:46.86,Default,,0000,0000,0000,,E para isso, basta a gente colocar\No asterisco aqui no começo do nome. Dialogue: 0,0:03:46.86,0:03:47.49,Default,,0000,0000,0000,,E pronto. Dialogue: 0,0:03:47.49,0:03:48.34,Default,,0000,0000,0000,,A partir desse momento, Dialogue: 0,0:03:48.34,0:03:52.36,Default,,0000,0000,0000,,o Python vai tratar essa variável \Nnão como uma variável normal, Dialogue: 0,0:03:52.36,0:03:54.01,Default,,0000,0000,0000,,mas sim como uma tupla, Dialogue: 0,0:03:54.01,0:03:56.09,Default,,0000,0000,0000,,que é basicamente\Numa coleção de itens Dialogue: 0,0:03:56.09,0:03:57.93,Default,,0000,0000,0000,,que não pode ser alterada. Dialogue: 0,0:03:57.93,0:04:00.10,Default,,0000,0000,0000,,Então, antes da gente\Nimplementar a nossa lógica, Dialogue: 0,0:04:00.10,0:04:04.68,Default,,0000,0000,0000,,vamos só colocar um print aqui,\Nexibindo o valor dessa variável Dialogue: 0,0:04:04.68,0:04:06.39,Default,,0000,0000,0000,,que a gente está recebendo\Nnos parâmetros, Dialogue: 0,0:04:06.39,0:04:08.24,Default,,0000,0000,0000,,para a gente ver a cara dela. Dialogue: 0,0:04:08.24,0:04:11.51,Default,,0000,0000,0000,,Então, aqui na execução do método,\Neu vou atualizar o nome também Dialogue: 0,0:04:11.51,0:04:15.14,Default,,0000,0000,0000,,e eu vou deixar aqueles\Nnossos dois valores, "Mundo" e "Aluno". Dialogue: 0,0:04:15.14,0:04:15.87,Default,,0000,0000,0000,,Porque lembra, Dialogue: 0,0:04:15.87,0:04:18.92,Default,,0000,0000,0000,,o Python é uma linguagem\Nde tipo dinâmico, então, Dialogue: 0,0:04:18.92,0:04:21.56,Default,,0000,0000,0000,,enquanto a gente não usar\Nos valores como se fossem números, Dialogue: 0,0:04:21.56,0:04:23.36,Default,,0000,0000,0000,,a gente não vai ter problema nenhum. Dialogue: 0,0:04:23.36,0:04:25.47,Default,,0000,0000,0000,,Se eu executar novamente\Naqui o nosso código, Dialogue: 0,0:04:25.47,0:04:28.52,Default,,0000,0000,0000,,a gente repara que os dois\Nvalores estão aqui, Dialogue: 0,0:04:28.52,0:04:30.65,Default,,0000,0000,0000,,mesmo que em apenas uma variável. Dialogue: 0,0:04:30.65,0:04:31.77,Default,,0000,0000,0000,,E se a gente quiser, Dialogue: 0,0:04:31.77,0:04:34.53,Default,,0000,0000,0000,,a gente pode vir aqui\Ne adicionar qualquer outra coisa, Dialogue: 0,0:04:34.53,0:04:36.34,Default,,0000,0000,0000,,como, por exemplo, "Aluna". Dialogue: 0,0:04:36.34,0:04:38.02,Default,,0000,0000,0000,,Se a gente executar,\Na gente vê que, Dialogue: 0,0:04:38.02,0:04:41.03,Default,,0000,0000,0000,,mesmo sem alterar\Na definição da nossa função, Dialogue: 0,0:04:41.03,0:04:42.91,Default,,0000,0000,0000,,aquele novo valor\Nque a gente informou Dialogue: 0,0:04:42.91,0:04:45.61,Default,,0000,0000,0000,,está lá dentro também,\Ndentro da nossa tupla. Dialogue: 0,0:04:45.61,0:04:46.49,Default,,0000,0000,0000,,Então, agora sim, Dialogue: 0,0:04:46.49,0:04:49.39,Default,,0000,0000,0000,,é hora da gente implementar\Na nossa lógica do cálculo da média. Dialogue: 0,0:04:49.39,0:04:51.79,Default,,0000,0000,0000,,Então, para isso,\Na gente vai vir aqui dentro Dialogue: 0,0:04:51.79,0:04:54.85,Default,,0000,0000,0000,,e vai começar com uma variável\Nque vai ser, por exemplo, Dialogue: 0,0:04:54.85,0:04:57.39,Default,,0000,0000,0000,,a soma, que vai\Ncomeçar com zero. Dialogue: 0,0:04:57.39,0:04:59.39,Default,,0000,0000,0000,,Eu vou implementar isso aqui\Nde uma forma bem simples, Dialogue: 0,0:04:59.39,0:05:01.69,Default,,0000,0000,0000,,para que a gente entenda\Ncomo está sendo feito. Dialogue: 0,0:05:01.69,0:05:04.29,Default,,0000,0000,0000,,Então, eu vou começar\Nexecutando um loop Dialogue: 0,0:05:04.29,0:05:06.23,Default,,0000,0000,0000,,para cada item\Ndaquela minha tupla. Dialogue: 0,0:05:06.23,0:05:06.77,Default,,0000,0000,0000,,Lembra? Dialogue: 0,0:05:06.77,0:05:10.51,Default,,0000,0000,0000,,O for permite que a gente\Nitere sobre vários tipos de dados, Dialogue: 0,0:05:10.51,0:05:11.67,Default,,0000,0000,0000,,e a tupla é um deles. Dialogue: 0,0:05:11.67,0:05:14.85,Default,,0000,0000,0000,,Se a gente fizer isso com a tupla,\Nele vai passar por cada um dos itens, Dialogue: 0,0:05:14.85,0:05:17.71,Default,,0000,0000,0000,,e a gente vai ter a oportunidade\Nde fazer alguma coisa com esse número. Dialogue: 0,0:05:17.71,0:05:20.35,Default,,0000,0000,0000,,No nosso caso, eu vou passar\Ndentro das notas. Dialogue: 0,0:05:20.35,0:05:23.32,Default,,0000,0000,0000,,Para cada nota, eu vou chamar\Nela de nota, aqui dentro, Dialogue: 0,0:05:23.32,0:05:26.07,Default,,0000,0000,0000,,e eu vou especificar\Na minha lista, ou a minha coleção, Dialogue: 0,0:05:26.07,0:05:27.25,Default,,0000,0000,0000,,que no caso é uma tupla. Dialogue: 0,0:05:27.25,0:05:28.03,Default,,0000,0000,0000,,E pronto. Dialogue: 0,0:05:28.03,0:05:32.12,Default,,0000,0000,0000,,Aqui dentro, eu vou basicamente\Nusar o operador de soma, Dialogue: 0,0:05:32.12,0:05:35.62,Default,,0000,0000,0000,,para fazer com que o soma\Nreceba o valor do próprio soma, Dialogue: 0,0:05:35.62,0:05:39.44,Default,,0000,0000,0000,,mais o valor da minha nota atual,\Nque está dentro do meu loop. Dialogue: 0,0:05:39.44,0:05:40.35,Default,,0000,0000,0000,,Beleza? Dialogue: 0,0:05:40.35,0:05:40.96,Default,,0000,0000,0000,,Pronto. Dialogue: 0,0:05:40.96,0:05:44.28,Default,,0000,0000,0000,,Nesse ponto aqui, a gente já tem\Na somatória das nossas notas. Dialogue: 0,0:05:44.28,0:05:45.32,Default,,0000,0000,0000,,Então, para terminar a lógica, Dialogue: 0,0:05:45.32,0:05:48.09,Default,,0000,0000,0000,,basta a gente fazer a divisão\Npela quantidade de notas. Dialogue: 0,0:05:48.09,0:05:52.01,Default,,0000,0000,0000,,Então, eu vou declarar uma outra\Nvariável aqui, que vai ser a média. Dialogue: 0,0:05:52.01,0:05:55.54,Default,,0000,0000,0000,,Ela vai ser basicamente\Nigual à minha soma, Dialogue: 0,0:05:55.54,0:05:59.60,Default,,0000,0000,0000,,dividida pela quantidade de itens\Nque foram informadas naquela tupla. Dialogue: 0,0:05:59.60,0:06:02.59,Default,,0000,0000,0000,,E para fazer isso, a gente\Npode usar a função nativa len, Dialogue: 0,0:06:02.59,0:06:06.73,Default,,0000,0000,0000,,que recebe alguma coleção e retorna\Npara a gente a quantidade de itens. Dialogue: 0,0:06:06.73,0:06:10.73,Default,,0000,0000,0000,,Então, basta a gente informar\Naqui para ele a nossa variável notas, Dialogue: 0,0:06:10.73,0:06:11.71,Default,,0000,0000,0000,,e pronto. Dialogue: 0,0:06:11.71,0:06:14.51,Default,,0000,0000,0000,,Vou colocar aqui um return, média, Dialogue: 0,0:06:14.51,0:06:17.71,Default,,0000,0000,0000,,para fazer com que a nossa função\Nretorne o valor daquele cálculo. Dialogue: 0,0:06:17.71,0:06:19.80,Default,,0000,0000,0000,,E se a gente executar\No nosso programa de novo... Dialogue: 0,0:06:19.80,0:06:21.97,Default,,0000,0000,0000,,hum, repara que a gente teve um erro. Dialogue: 0,0:06:21.97,0:06:23.27,Default,,0000,0000,0000,,Isso aconteceu basicamente Dialogue: 0,0:06:23.27,0:06:26.20,Default,,0000,0000,0000,,porque a gente mudou a implementação\Nda nossa função, Dialogue: 0,0:06:26.20,0:06:29.33,Default,,0000,0000,0000,,mas esqueceu de mudar os valores\Nque foram informados no parâmetro. Dialogue: 0,0:06:29.33,0:06:30.27,Default,,0000,0000,0000,,Dá uma olhada. Dialogue: 0,0:06:30.27,0:06:34.40,Default,,0000,0000,0000,,Aqui dentro, a gente está informando\N"Mundo", "Aluno" e "Aluna", que são texto. Dialogue: 0,0:06:34.40,0:06:37.38,Default,,0000,0000,0000,,E agora sim, a gente está lidando\Ncom valores numéricos. Dialogue: 0,0:06:37.38,0:06:40.09,Default,,0000,0000,0000,,Então, basta que a gente\Nedite aqui esses valores. Dialogue: 0,0:06:40.09,0:06:42.50,Default,,0000,0000,0000,,Então, vamos começar\Ncom uma conta simples aqui. Dialogue: 0,0:06:42.50,0:06:45.24,Default,,0000,0000,0000,,Eu vou informar a nota 5 e a nota 5. Dialogue: 0,0:06:45.24,0:06:46.37,Default,,0000,0000,0000,,Eu vou limpar o terminal Dialogue: 0,0:06:46.37,0:06:48.37,Default,,0000,0000,0000,,para que fique um pouco\Nmais simples as coisas. Dialogue: 0,0:06:48.37,0:06:52.55,Default,,0000,0000,0000,,E se a gente rodar novamente,\Nnovamente, o nosso aplicativo rodou, Dialogue: 0,0:06:52.55,0:06:54.74,Default,,0000,0000,0000,,mas a gente não tem nada na tela. Dialogue: 0,0:06:54.74,0:06:57.43,Default,,0000,0000,0000,,E isso aconteceu porque a gente\Nexecutou a função Dialogue: 0,0:06:57.43,0:06:58.80,Default,,0000,0000,0000,,e ela retornou o valor. Dialogue: 0,0:06:58.80,0:07:00.83,Default,,0000,0000,0000,,Mas a gente não exibiu\Nisso de lugar em algum. Dialogue: 0,0:07:00.83,0:07:05.29,Default,,0000,0000,0000,,Então, eu vou basicamente envolver\Nessa função dentro dos parênteses Dialogue: 0,0:07:05.29,0:07:08.32,Default,,0000,0000,0000,,e usar a função nativa print, Dialogue: 0,0:07:08.32,0:07:10.54,Default,,0000,0000,0000,,para que agora sim\Nesse valor seja exibido. Dialogue: 0,0:07:10.54,0:07:12.85,Default,,0000,0000,0000,,E se a gente roda de novo\Ncom os mesmos valores, Dialogue: 0,0:07:12.85,0:07:15.25,Default,,0000,0000,0000,,agora sim, a gente tem a média 5. Dialogue: 0,0:07:15.25,0:07:19.16,Default,,0000,0000,0000,,E se eu acrescentar algum valor\Naqui, como, por exemplo, 10, Dialogue: 0,0:07:19.16,0:07:22.84,Default,,0000,0000,0000,,a gente tem como\Nresultado a média 6.6, Dialogue: 0,0:07:22.84,0:07:26.27,Default,,0000,0000,0000,,que é o resultado\Nda somatória de 5, 5 e 10, Dialogue: 0,0:07:26.27,0:07:28.67,Default,,0000,0000,0000,,dividido pela quantidade \Ntotal, que é 3. Dialogue: 0,0:07:28.67,0:07:32.29,Default,,0000,0000,0000,,E é dessa forma que a gente consegue\Nlidar com informações dinâmicas. Dialogue: 0,0:07:32.29,0:07:33.64,Default,,0000,0000,0000,,Cuidado para não confundir. Dialogue: 0,0:07:33.64,0:07:37.00,Default,,0000,0000,0000,,A gente ainda precisa especificar\Nquais são as variáveis. Dialogue: 0,0:07:37.00,0:07:39.59,Default,,0000,0000,0000,,E a gente pode usar\Nos Args em conjunto Dialogue: 0,0:07:39.59,0:07:41.68,Default,,0000,0000,0000,,com outros tipos\Nde variáveis comuns, Dialogue: 0,0:07:41.68,0:07:44.95,Default,,0000,0000,0000,,desde que a gente especifique\Nas variáveis comuns no começo Dialogue: 0,0:07:44.95,0:07:46.51,Default,,0000,0000,0000,,e deixe os args para o final. Dialogue: 0,0:07:46.51,0:07:49.34,Default,,0000,0000,0000,,A gente usou os Args aqui\Npara fazer o cálculo de uma média, Dialogue: 0,0:07:49.34,0:07:51.67,Default,,0000,0000,0000,,que é um cenário\Nem que realmente, talvez, Dialogue: 0,0:07:51.67,0:07:54.08,Default,,0000,0000,0000,,a gente tenha uma quantidade \Ndinâmica de itens Dialogue: 0,0:07:54.08,0:07:55.86,Default,,0000,0000,0000,,e a gente tenha que lidar com isso. Dialogue: 0,0:07:55.86,0:07:59.40,Default,,0000,0000,0000,,E é exatamente nesse tipo de cenário\Nem que você vai querer usar os Args. Dialogue: 0,0:07:59.40,0:08:02.04,Default,,0000,0000,0000,,Normalmente, a gente costuma\Nusar eles com listas, Dialogue: 0,0:08:02.04,0:08:03.92,Default,,0000,0000,0000,,que vão vir de algum recurso externo, Dialogue: 0,0:08:03.92,0:08:06.94,Default,,0000,0000,0000,,onde a gente não controla\Na quantidade de itens que vai ter, Dialogue: 0,0:08:06.94,0:08:08.54,Default,,0000,0000,0000,,mas quer lidar com todos eles. Dialogue: 0,0:08:08.54,0:08:10.59,Default,,0000,0000,0000,,E é dessa forma que a gente\Nconsegue lidar Dialogue: 0,0:08:10.59,0:08:13.80,Default,,0000,0000,0000,,com essa lista dinâmica de itens,\Nsem ter que necessariamente Dialogue: 0,0:08:13.80,0:08:15.87,Default,,0000,0000,0000,,se preocupar com a quantidade informada.