Back
Close

Programação Python (Parte 3) - Prof. MARCO VAZ

MarcoVaz
7,771 views

Exercitando

Qual dos caracteres abaixo, colocados numa expressão regex mapeia zero ou mais caracters?
O que faz a expressão regular: [a-z]?
Qual das expressões regulares abaixo, verifica e retorna todas as palavras da String: "aviao aviador aviacao"?
Qual das expressões regulares abaixo, verifica e retorna as strings "aviao ou barco" ou os dois?
O que faz a expressão regular:"\d{3}" ?
O que deve ser colocado após um determinado caracter para que retorne uma sequência de 1 até 3 desse caractere" ?
sentenca = 'nos nao estamos nas nuvens'
resultado = re.findall(r'\bn.s', sentenca)
print(resultado)
Dado o trecho de código acima, qual o resultado de sua execução?

Desafio

Dada a lista abaixo, crie 2 listas, sem repetições, contendo os nomes (lnomes) e os provedores (lprovedor). Ao final, imprima as listas.

enderecos = ['rjlowe@uct.ac.za' , 'josrodri@caret.cam.ac.uk', 'stephen.marquard@gmail.com', 'zqian@iupui.edu', 'gopal.ramasammycook@nakamura.uits.iupui.edu', 'david.horwitz@collab.sakaiproject.org', 'antranig@umich.edu' , 'dhorwitz@collab.sakaiproject.org', 'rjlowe@media.berkeley.edu', 'cwen@media.berkeley.edu', 'ray@gmail.com', 'louis@gmail.com', 'gsilver@media.berkeley.edu', 'josrodri@caret.cam.ac.uk', 'gopal.ramasammycook@nakamura.uits.iupui.edu']

Programacao Python
Solução
import re
enderecos = ['<rjlowe@uct.ac.za>' , '<josrodri@caret.cam.ac.uk>', '<stephen.marquard@gmail.com>', '<zqian@iupui.edu>', '<gopal.ramasammycook@nakamura.uits.iupui.edu>', '<david.horwitz@collab.sakaiproject.org>', '<antranig@umich.edu>'
, '<dhorwitz@collab.sakaiproject.org>', '<rjlowe@media.berkeley.edu>', '<cwen@media.berkeley.edu>', '<ray@gmail.com>', '<louis@gmail.com>',  '<gsilver@media.berkeley.edu>', '<josrodri@caret.cam.ac.uk>', '<gopal.ramasammycook@nakamura.uits.iupui.edu>']

lnomes = set()   #Cria um conjunto pois não tem elementos repetidos
lprovedor = set()
for x in enderecos:
    sem = str((x.strip('<')).strip('>')) #Retira o  <> e retorna a string do endereço de email
    quebra = sem.split('@')              # Quebra a string sem no @    
    print(sem)  
    lnomes.add(quebra[0])
    lprovedor.add(quebra[1])	

print(lnomes)
print(lprovedor)
Create your playground on Tech.io
This playground was created on Tech.io, our hands-on, knowledge-sharing platform for developers.
Go to tech.io
codingame x discord
Join the CodinGame community on Discord to chat about puzzle contributions, challenges, streams, blog articles - all that good stuff!
JOIN US ON DISCORD
Online Participants