Curso Básico de Python 2024 - Aula 2 - Strings e Funções de Texto

24.94k views6260 WordsCopy TextShare
Hashtag Programação
Quer saber mais sobre o nosso Curso Completo de Python? Clique no link abaixo para garantir sua vaga...
Video Transcript:
fala impressionador vamos pra nossa aula dois do nosso curso básico de Python onde nessa aula você vai aprender a trabalhar com Strings no Python textos do Python você vai aprender as principais operações de string as principais operações de texto e o mais importante o por que você deveria dominar isso e saber isso muito bem quando você tá aprendendo Python e a gente vai seguir aqui nesse nosso curso básico Então vamos [Música] lá bom galera se você gostou da ideia do vídeo já deixa seu like se inscreve no canal para acompanhando os próximos vídeos dessa série desse curso básico de Python E lembra que eu deixei para vocês na descrição aqui todos os materiais que vocês precisam pro curso tá o gabarito tá lá tá aqui embaixo o gabarito do projeto também as bases de dados que a gente vai as bases de arquivos né que a gente vai usar pro nosso projeto do final do curso Então se você caiu de paraquedas aqui pega isso aqui e também é provavelmente vai ter um link aqui embaixo da playlist do nosso curso básico de Python que você pode acompanhar ele todo se você tá iniciando nessa nessa sua jornada em programação Então vamos direto agora pro conteúdo da aula de hoje O que que a gente vai fazer agora na aula de hoje se você de novo se você caiu aqui de paraquedas assiste a aula um porque na aula um a gente deu toda introdução instalação configuração e tudo mais para você cair aqui nessa aula e seguir certinho bom nessa aula a gente vai trabalhar com textos em Python E para isso que eu vou fazer é a gente tem lá o nosso arquivo que a gente terminou a aula um eu vou agora clicar no maizinho aqui de novo arquivo vou criar um novo arquivo que eu chamei de aula 2 ppy Beleza então aa 2. py tá aqui o nosso arquivo e aqui a gente vai começar a trabalhar com textos em p e o primeiro de tudo é cara por que que eu deveria aprender a trabalhar com textos tipo nessa aula a gente vai fazer aquelas operações do tipo assim Eu tenho um e-mail aqui de um usuário que vai ser por exemplo meu e-mail qualquer @gmail. com claramente não é um e-mail verdadeiro Putz como é que eu faço para pegar só o servidor do e-mail como é que eu faço para pegar o nome do e-mail e tudo mais por essas coisas aprender isso é importante o seguinte boa parte das informações que você trabalha quando você tá programando essas informações elas V escritas tema elas vêm de uma base de dados elas vêm de algum lugar e muitas mas muitas das vezes que elas vêm desse lugar elas vêm formatos de texto Então você precisa saber trabalhar com textos porque boa parte do trabalho que tem na programação para você preparar as informações para fazer uma automação para construir um site para criar um trabalhar com análise de dados enfim independente da área é trabalhar com informações que estão no formato de texto e trabalhar com informações que estão no formato de texto não é a coisa mais intuitiva do mundo então por isso que eu fiz questão de que a nossa segunda aula já fosse você aprendendo a manipular textos de uma forma eficiente até porque muitas das vezes o seu código o seu programa no final ele vai exibir uma mensagem pro usuário e para você conseguir exibir uma mensagem pro usuário no formato correto de uma maneira Putz agradável intuitiva você tem que saber também trabalhar com textos então isso foi só para explicar a importância de você aprender essas partes de texto e não olhe isso que a gente vai ver na aula de hoje como Nossa várias brincadeirinhas com texto não olhe como você tá aprendendo a manipular textos no Python para qualquer situação que você for precisar e você você vai ver inclusive que no nosso projeto final que a gente vai fazer a gente vai precisar manipular texto e quase todo projeto Você vai precisar mesmo Tá bom então vamos lá o que que eu vou fazer primeiro passo eu vou criar Justamente a as algumas variáveis que a gente já tinha feito na primeira aula do curso que é a variável de faturamento Digamos que você tá trabalhando numa empresa essa empresa tem um faturamento de 1000 e um custo de 700 a gente criou essas duas variáveis aqui e aí eu ensinei para vocês que você poderia printar né ou seja exibir essa informação no seguinte formato eu posso botar simplesmente aqui a variável faturamento e a variável custo você pode só colocar elas aqui ó variável faturo variável custo e ele vai mostrar PR você ó faturamento 1000 custo 7 inus você podia calcular aqui o lucro que vai ser o faturamento menos o custo e exibir essa variável de lucro aqui ao invés de exibir o faturamento e o custo beleza isso vai funcionar também mas e eu também mostrei que você poderia fazer algo do tipo assim ah o lucro da empresa o ID E aí colocar aqui uma vírgula lucro beleza só o que acontece imagina que você quisesse colocar agora uma variável dentro de um texto ou então que você quisesse criar um texto super personalizado cheio de variações ali dentro cheio de variáveis ali dentro Como que você faria isso por exemplo Vamos fazer um exemplo aqui bem simples é o seguinte eu posso colocar assim ó faturamento da empresa faturamento da empresa dois pontos 1000 que vai ser aquele faturamento custo 700 lucro 300 só que repar o seguinte se eu printar nesse formato que tá aqui esses textos todos aqui esses números aqui eles são fixos Se eu mudar aqui o faturamento para 1200 ele não atualiza o texto tá vendo tá errado o faturamento foi de 1200 o lucro não foi mais de 300 e tudo mais ou seja como que eu consigo colocar variáveis tá vendo valores que são dinâmicos variáveis dentro de um texto a melhor forma de você fazer isso é você você tem duas maneiras a primeira maneira é você substituir cada um desses valores aqui por Chaves tá vendo por Chaves você só substitui eles por Chaves substituiu e substituiu e no final você bota um ponto Format para ele formatar esse texto aqui e aí você vai passar os valores que você quer que ele coloque nessas Chaves na mesma ordem que tá aqui então a primeira chave é do faturamento então o primeiro valor que eu vou passar aqui é faturamento a segunda chave é do custo então o segundo valor que eu vou passar aqui é custo e a terceira chave é a do lucro Então eu vou passar aqui lucro essa aqui é uma maneira de fazer não é que eu prefiro fazer normalmente tá vendo mas ela funciona a que eu prefiro fazer normalmente é o seguinte ó e que eu recomendo vocês mais fazerem é o que vocês mais vão ver na programação mesmo é o quê ao invés de você fazer isso tudo você coloca um Ezinho na frente do texto esse fezinho diz o seguinte pro texto Olha só esse texto vai ser formatado por isso que é um F E aí você coloca as variáveis entre Chaves Então você coloca aqui ó faturamento faturamento coloca aqui ó entre Chaves custo e coloca aqui entre Chaves o lucro e aí quando você coloca o fzin aqui tudo que tiver entre Chaves ele entende que é um valor que tá vindo do seu programa então se você rodar o código agora você consegue ver aquele resultado bonitinho só que assim é mais intuitivo porque eu consigo saber que aqui vai ser o valor da variável faturamento você não precisa saber a ordem Ah o primeiro é esse segundo é esse terceiro é aquele não você só vai preenchendo aqui no formato correto Então é assim que a gente costuma fazer quando a gente quer mesclar variáveis né valores dinâmicos com textos beleza essa é a primeira coisa agora vamos começar a aprender a manipular os textos imagina que você tá trabalhando com uma base de dados enorme de clientes e aí você tem lá o e-mail do cliente e aí o e-mail do cliente vai ser por exemplo qualquer coisa aleatória @gmail.
com claramente não é um e-mail verdadeiro isso daqui beleza bom show de bola e aí o que que a gente pode querer fazer aqui dentro a gente pode querer começar a buscar várias informações aqui dentro Eu quero conseguir saber por exemplo digamos Você tem uma base de dados com vários e-mails de cliente eu quero saber quais são os principais servidores de e-mail a galera costuma usar mais Gmail mais Hotmail mais yaho mais o qu Por que que você quer saber isso ler porque por exemplo esses formatos esses e-mails diferentes eles podem ter taxas de entregas diferentes taxas de abertura diferente de acordo com o que tá mais existente ali na minha base de dados eu posso querer fazer uma determinada ação ou outra ação enviar o e-mail num formato ou no outro formato então é para esse tipo de coisa então vamos lá vamos começar a aprender a manipular textos aqui bom e as primeiras manipulações de texto que eu queria mostrar para vocês é a gente tornar tudo maiúscula maiúscula e minúscula você consegue fazer isso como vai ser o e-mail cliente puper para você transformar Tudo em letra maiúscula E aí dá uma olhada se eu printar aqui agora o e-mail cliente você vai ver que ele mostrou ó qualquer coisa aleatória @ mail. com Então tá vendo Então repara o seguinte sempre que você quiser editar um texto você tem que Editar o texto fazendo isso daqui ó o novo valor do e-mail do cliente vai ser o antigo valor do e-mail do cliente só que agora em letra maiúscula tá vendo e aí em letra minúscula é o mesmo procedimento daqui a diferença é que ao invés de ser upper a gente usa o lower tá o lower transforma em letra minúscula então se você olhar aqui você vai ver olha lá que interessante primeiro Tudo em letra maiúscula e depois Tudo em letra minúscula e repara lembra aquilo a gente sempre falou o Python ele executa as coisas de cima para baixo então ele primeiro criou o e-mail do cliente aqui você pode escrever ele do formato que você quiser aqui ele editou pra letra maiúscula e exibiu para mim o e-mail nesse formato aqui no formato letra maiúscula depois ele editou pra letra minúscula e exibiu nesse formato em letra minúscula então repara o seguinte aqui nessa linha de código aqui quando ele rodou esse print aqui de cima quando ele rodou esse print o e-mail tava com letra maiúscula então ele exibe em letra maiúscula ele vai usar esse valor do e-mail nesse momento do código quando chegou aqui embaixo ele já tinha editado o e-mail de novo então ele vai usar esse e-mail do cliente nesse momento do código Beleza então essas aqui são as primeiras operações as próximas operações que eu queria mostrar para vocês é você conseguir encontrar um elemento dentro de um texto específico por exemplo Digamos que eu querer encontrar o @ dentro do e-mail para eu saber se is é um e-mail verdadeiro ou não porque não tem como sabe como quando você preenche num site lá um e-mail E ele fala esse aqui não é um e-mail válido como que ele sabe que não é um e-mail válido porque ele procura várias coisas no seu e-mail para descobrir se ele é e-mail Válido por exemplo se tem um ar no seu e-mail Como que você faz isso eu vou printar para vocês para vocês poderem visualizar o e-mail cliente. find @ então ponto find e você coloca aqui dentro do parênteses o quem você tá procurando ele vai dizer para você um numerozinho presta atenção que é a posição do ar dentro desse texto então por exemplo ele tá dizendo aqui o número 22 O que que significa isso significa que o ar é o caracter que tá na posição 22 como que funciona isso no Python quando você tem um texto o Python basicamente atribui um número de posição para cada caracter para cada letra Cada pensa que uma letra é um caracter um espaço é um caracter um ifen é um caracter para cada caracter mesmo é o termo que a gente usa como se fosse cada letra ali dentro só que pensa que espaço também conta traço também conta tudo conta Beleza então o Ara tá na posição 22 por quê Porque o Python começa do zero e Vai contando então Ó a primeira letra é a letra de posição zero a segunda 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 O ar é a posição 22 tanto que se eu mudar isso daqui para Lira @gmail.
com obviamente não é o meio meio de verdade né esse meio aqui nem existe ele é Ó 1 2 3 não é zero lembra que ele sempre começa a contar do zero 0 1 2 3 4 o ar vai ser a posição qu Olha lá rodei o código de novo o Ara é a posição quatro Beleza então o find ele permite você encontrar um elemento ali dentro e o que que acontece se você não tiver passado nada se você não tiver não tiver o aroba se ele não encontrar aquele elemento ali dentro o que que o find vai dar para você como resposta ele vai dar como resposta menos um então men-1 quando não encontrar então o que que aquele sisteminha de verificar e-mail fazem Eles procuram um @ aqui dentro quando o o valor do find for igual a men1 significa que não tem arroba então eu vou exibir uma mensagem de erro pro usuário Deu para perceber Então essa foi a lógica aqui que você consegue fazer né que quando não encontrar essa é a lógica que você consegue fazer para travar esse tipo de coisa mas o find ele então vai dar para você a posição de um elemento dentro do texto e aí ainda nessa linha a gente pode então pegar o tamanho do texto o tamanho do texto e para você pegar o tamanho do texto você vai usar o l o que que é o Len Len vem de inglês L que é tamanho né tamanho mesmo então tamanho do texto então se eu passar aqui ó o e-mail como e-mail cliente dentro do Len ele vai dizer para mim o tamanho do e-mail cliente o e-mail cliente tem 14 caracteres né então ele vai do zer ao 13 lembra ele começa a contar do zero então 0 1 2 3 4 5 6 7 8 9 10 11 12 13 Então são 14 caracteres do zero até o 13 então o último é o 13 e aí inclusive galera Vocês conseguem fazer o processo contrário por exemplo Digamos que eu queira pegar do e-mail cliente o caracter de número zero Como que eu faço isso você vai pegar aqui então para pegar um caracter Como que você vai fazer você vai passar aqui entre colchetes então aqui é uma estrutura especial Sempre que você quiser selecionar um elemento dentro de uma lista de elementos você vai selecionar com um colchete tá o colchete é uma estrut ura do Python né que você coloca ali que permite você selecionar um elemento dentro de uma lista de elementos Como assim uma lista de elementos Lira nas próximas aulas desse curso básico a gente ainda vai aprender sobre listas mas entenda que pro Python um texto é como se fosse uma lista de caracteres uma lista de textos né Cada letrinha cada caracter é um texto então se eu quero pegar o elemento de índice zero ou seja o primeiro elemento da lista é o cara de índice zero Então quem ele vai me dar ele vai me dar a letra L Se eu colocar aqui o cara de de índice um ele vai me dar a letra i tá vendo aqui a letra i que é o i de Lira Se eu colocar aqui o cara de índice quatro que era do arr tá vendo ó 0 1 2 3 4 o ar do índice 4 então se eu passar aqui do índice 4 ele vai dizer para mim o ar tá vendo aqui embaixo então com isso você consegue extrair um cara específico do texto Sempre que você quiser beleza e aí repara que tem algumas alguns casos especiais como por exemplo você pode quer pegar que que acontece se eu colocar aqui e-mail cliente caracter de índice S esse meu e-mail aqui ele tem índice sete tem ele vai me dar o a aqui do Gmail mas se eu colocasse aqui um caracter de índice por exemplo 25 não existe o caracter de índice 25 nessa lista aqui concorda comigo porque nessa lista desculpa nesse texto por quê Porque esse texto a gente viu aqui ele tem 14 caracteres tá vendo aqui ó tamanho do texto ele tem 14 caracteres então se eu vou pedir para ele pegar o cara de índice 25 ele vai me dar um erro ele vai me dizer olha só índice out of Range index out of Range ou seja não existe o cara de índice 25 ele já até sinaliza para você aqui olha só tá errado isso aqui essa linha de código tá errada não tem o cara de índice 25 ali dentro tá então o último cara que você vai conseguir pegar aqui é o índice 13 né porque como você tem 14 caracteres ele vai do zero ao 13 do zer ao 13 você tem 14 números então ele vai dizer o mzinchaleft o caracter de índice 4 é o Ara a gente viu aqui ó porque ele começa a contar do zero ó 0 1 2 3 4 e o caracter de índice -4 é -1 -2 -3 - 4 como não tem - 0 não faz sentido né então ele começa a contar do -1 -1 -2 - 3 - 4 então o -4 é o ponto igual tá escrito aqui embaixo tá isso permite também a gente pegar um pedaço do texto eu quero pegar um pedaço do texto por exemplo eu posso querer pegar do meu e-mail o cliente até o meu até o ar até o Ara por exemplo eu quero pegar tudo que vem antes do ar Como que eu faço o ar a gente não viu que era posição quatro o rubba a gente viu que era posição quatro então eu coloco assim ó dois pontos quatro até o índice quatro e olha lá ele vai dizer para mim o texto Lira tá vendo isso aqui é um pedaço do texto até o índice 4 até o ar Se eu colocar até o índice 5 ele vai pegar até Lira @ então se você reparar ele sempre faz a até aquele caracter excluindo aquele caracter ele não inclui esse caracter aqui então eu posso fazer ó até o índice 4 outra opção é você fazer por exemplo eu quero pegar do índice um até o índice 4 então se eu rodar isso aqui agora ele vai me dizer Ira Tá vendo Por que ira porque até o índice 4 era o texto todo até o índice 4 do 0 1 o 2 e o TR o quatro ele não inclui Beleza então até o índice quatro ele vai pegar o 0 1 o dois o TR o quatro ele não inclui então ele vai pegar Lira Beleza agora se você colocar aqui do índice um até o índice 4ro O que que significa ele não vai pegar o índice zero ele vai começar no índice um então índice 1 2 3 e o quatro ele não pega Então ira tá vendo se eu rodar o código aqui ele vai dizer para mim Ira Beleza então se você quiser e consolidar isso bem na sua cabeça vai testando números diferentes aqui testa com números diferentes e dá uma olhada no texto tenta fazer a conta de cabeça para ver Você vai bater exatamente o que você queria por exemplo Digamos que eu queira pegar aqui o @gmail eu quero pegar @gmail o @ é o caracter de índice quatro concorda comigo então quero começar a pegar no índice quatro quero começar a pegar no índice quatro qu beleza eu quero do índice 4 até quem até o 5 6 7 8 9 10 até o índice 10 que é o ponto lembra que ele não pega o último Então do quatro até o 10 do quatro até o 10 se eu rodar o código aqui ele vai pegar o @gmail que era exatamente o que eu queria que ele pegasse tá vendo Então repara o primeiro índice aqui ele sempre inclui o último ele não inclui Lira E se eu quisesse pegar do arr até o final é só você não passar o último cara aqui se você não passar o último cara ele vai pegar do ar até o final Então @gmail. com tá vendo do ar até o final Então é assim que você pega um pedaço de texto você usa os dois pontos para fazer isso você passa o índice Inicial dois pontos o índice final se você quiser pegar desde o início é só você não passar índice Inicial Se você quiser pegar até o final é só você não passar o índice final se você quiser pegar Inicial dois pontos final beleza essa é a lógica que você faz para pegar um pedaço de um texto só que aí nisso você pensa assim pô legal lir e se eu quisesse substituir o servidor daqui do e-mail o servidor era gmail. com quero trocar por hotmail.
com como que eu faria para eu trocar um pedaço do texto Eu precisaria pegar o pedaço do texto fazer uma conta com ele e substituir não existe o ponto replace que que o ponto replace faz ele faz Exatamente isso ele substitui um texto para você então por exemplo vou colocar aqui ó o novo e-mail que vai ser o e-mail com valor substituo vai ser o nosso e-mail cliente o antigo e-mail P replace trocando quem E aí você passa primeiro quem você quer tirar eu quero tirar o gmail. com e quem você quer colocar no lugar desse cara que você tirou eu quero colocar o hotmail. com E aí ele vai olhar aquele e-mail para você e ele vai dizer ele vai olhar esse texto que você passou e aí ele vai substituir caso ele encontre então por exemplo se eu rodar o código aqui ele vai substituir ó lir @hotmail.
com tá vendo o novo e-mail é o antigo e-mail só que substituindo gmail. com por hotmail. com repara que ele não edita o cara original ele não editou o e-mail original Ele criou um novo e-mail porque eu fiz assim o novo e-mail vai ser o antigo e-mail substituindo esse cara daqui Beleza então lembra que sempre quando você vai editar um texto se você quiser ser editar o e-mail antigo você aqui teria que colocar o próprio e-mail antigo e-mail cliente o novo valor do e-mail cliente vai ser o antigo valor substituindo sempre que você quer editar um texto você tem que fazer esse procedimento o novo valor dele vai ser igual ao antigo valor dele editado beleza essa é a lógica então com isso a gente consegue substituir só que repara que se eu aqui ao invés de ter passado gmail.
com tivesse passado por exemplo iu. com não Ten o texto yu. com aqui dentro então simplesmente o meu resultado final ia vir sem edição nenhuma ele não ia editar então o replace ele não vai dar para você uma mensagem de erro ele só não vai fazer nada tá então toma cuidado com isso quando você for usar Beleza então vamos manter aqui o yahu que ele a princípio não vai fazer nada mas agora a gente sabe o que que o replace na verdade vamos manter o Gmail pra gente garantir que a gente sabe o que ele tá fazendo que ele tá substituindo o valor do texto ali pra gente beleza galera e aí aqui eu quero mostrar um caso especial de formatação de texto para vocês ISS aqui são os principais métodos de texto na verdade tem um método ainda que eu quero mostrar que é muito útil para nome de pessoas por exemplo né Por exemplo meu nome é João Lira Se eu colocar João Lira Tudo em letra minúscula e às vezes os usuários fazem isso né o cara vai lá no formulário e preenche o nome dele todo em letra minúscula Como que eu faço na hora de eu exibir pro usuário Olá João para aparecer bonitinho ou quando eu for mandar por e-mail para ele ser bonitinho João com letra maiúscula João Lira com J maiúsculo e o l maiúsculo e tal a gente tem algumas funções para isso então a gente tem a função do ponto então repara nome é essa variável que eu criei o nome João Lira e a a gente tem duas funções que são interessantes tem a função capitalize e a gente tem a função title Tá qual a diferença entre essas duas a diferença é a seguinte Olha só o capitalize Ele pega a primeira letra e deixa maiúscula e todas as outras minúsculas João Lira o lzinho da segunda palavra tá minúscula o title então repara a gente já viu upper deixa tudo maiúsculo lower deixa tudo minúsculo o capitalize deixa a primeira letra maiúscula só e o title deixa a primeira letra de cada palavra maiúscula Beleza então o João tá maiúsculo e o tá com l maiúsculo tá então toma esse cuidado aqui tá bom então isso aqui é pra gente poder trabalhar com o nomes né pra gente poder fazer os ajustes nos nomes agora eu quero pegar alguns casos especiais de texto para vocês e antes dos casos especiais eu queria fazer um breve exercicio zinho com vocês na aula que é o quê dado isso tudo que a gente aprendeu aqui se você quiser tenta pausar o vídeo e fazer sozinho se não faz junto comigo Se tiver sentindo dificuldades não tem problema Digamos que você queira conseguir extrair todo o servidor do e-mail do usuário e eu quero conseguir extrair também o primeiro e o segundo nome aqui da variável nome então a gente quer fazer essas duas coisas então eu quero pegar o servidor do e-mail e eu quero conseguir pegar o primeiro nome e pegar o sobrenome da variável nome Beleza então vamos lá primeiro servidor do e-mail Servidor como eu vou pegar o servidor do e-mail daqui usando os métodos de texto que a gente aprendeu primeiro eu tenho que descobrir a posição do ar concorda comigo porque é a posição do ar que me diz onde começa aquele servidor eu poderia aqui até fazer assim ó e-mail cliente pegando do índice quro até o final por exemplo rodei aí vamos printar aqui o servidor print servidor para você ver vai ser a última coisa que ele vai printar pra gente ó @gmail.
com beleza mas eu não quero incluir o ar aí você vai falar Beleza então coloca aqui o número cinco vai funcionar vai funcionar numa boa gmail. com só qual é o problema o problema é que se aqui o e-mail não fosse Lira mas o e-mail fosse Fulano @gmail. com já ia dar errado aqui o nosso servidor então eu quero conseguir fazer isso aqui de forma dinâmica eu quero que esse numerozinho daqui Inicial ele seja de forma dinâmica Como que eu faço isso a gente já aprendeu a gente descobre a posição do ara tá vendo Então eu posso fazer assim ó posição do ar né do Ar Vai ser quem vai ser o e-mail cliente.
find @ ele vai encontrar o ar ali dentro e aí o servidor eu vou pegar da posição do ar até o final dois pontos até o final concorda comigo Então olha lá se eu rodar o código agora ele pegou @gmail. com se eu mudasse aqui agora pro e-mail Lira @gmail. com e rodasse o código ele ia funcionar igual @gmail.
com tá vendo Ah Lira eu não quero incluir o ar Beleza não tem problema que que você faz a posição do ar maisum para você não incluir o arroba para ele excluir esse cara olha Olha lá gmail.
Copyright © 2024. Made with ♥ in London by YTScribe.com