SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
Python:
Conjuntos

Claudio Esperança
Conjuntos
 Um conjunto é uma coleção de valores distintos
 Pode­se implementar conjuntos de diversas formas
 Uma lista de valores 




Têm­se que tomar o cuidado de evitar valores duplicados

Um dicionário



As chaves de um dicionário são necessariamente únicas
O valor associado a cada chave pode ser qualquer um

 Python suporta um tipo primitivo chamado set que 

implementa conjuntos


Mais apropriado do que o uso de listas ou dicionários
O tipo set
 Pode­se construir um set usando a construção

set(sequência)



Onde sequência é uma sequência qualquer, como uma lista, 
uma tupla ou uma string
Caso use­se uma lista, os elementos devem ser imutáveis

 Exemplos:
>>> set((1,2,3))
set([1, 2, 3])
>>> set ("xxabc")
set(['a', 'x', 'c', 'b'])
>>> set ([1,(1,2),3,1])
set([(1, 2), 1, 3])
>>> set ([1,[1,2],3,1])
ERROR...
Trabalhando com sets
 x in s → True se o elemento x pertence a s
 s.add(x) →  Inclui o elemento x em s
 s.copy() →  Retorna uma cópia de s
 s.union(r) →  Retorna a união entre s e r
 s.intersection(r) →  Retorna a interseção entre s e r
 s.difference(r) →  Retorna a diferença entre s e r
 list(s) →  Retorna os elementos de s numa lista
 tuple(s) →  Retorna os elementos de s numa tupla
Exemplos
>>> s = set([1,2,3])
>>> r = set([2,5,9,1])
>>> 1 in s
True
>>> 1 in r
True
>>> s.union(r)
set([1, 2, 3, 5, 9])
>>> s.intersection(r)
set([1, 2])
>>> s.difference(r)
set([3])
>>> r.difference(s)
set([9, 5])
>>> s.add(5)
>>> s.intersection(r)
set([1, 2, 5])
Iterando sobre sets
 Pode­se também usar o comando for com sets
 Observe­se que a iteração não necessariamente visita os 

elementos na mesma ordem em que eles foram inseridos 
no conjunto
 Exemplo:
>>> s = set([1,2,9,100,"a"])
>>> for x in s:
print x,

a 1 2 100 9
Outros métodos
 s.discard(x) →  Exclui o elemento x de s (se existir)
 s.issubset(r) →  True sse s contido em r
 s.issuperset(r) →  True sse s contém r
 s.symmetric_difference(r) →  Retorna a diferença 

simétrica entre s e r, isto é, a união entre s e r menos a 
interseção de s e r
 s.update(r) →  mesmo que s = s.union(r)
 s.intersection_update(r) →  mesmo que 
s = s.intersection(r)
 s.difference_update(r) →  mesmo que 
s = s.difference(r)
Exemplos
>>> s = set([1,2,3])
>>> r = set([2,5,9])
>>> s.update(r)
>>> s
set([1, 2, 3, 5, 9])
>>> s.issuperset(r)
True
>>> r.issubset(s)
True
>>> s.discard(5)
>>> s
set([1, 2, 3, 9])
>>> s.symmetric_difference(r)
set([3, 5, 1])

Contenu connexe

En vedette

DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...
DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...
DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...coscu
 
Reporte proyecto formativo 773907 - 752363
Reporte proyecto formativo   773907 - 752363Reporte proyecto formativo   773907 - 752363
Reporte proyecto formativo 773907 - 752363Patriicia Morales
 
George Toxicol2008[2]
George Toxicol2008[2]George Toxicol2008[2]
George Toxicol2008[2]冠宇 姜
 
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011Jeff Hadfield
 
Construccion de tabiques con ladrillos de vidrio 1
Construccion de tabiques con ladrillos de vidrio   1Construccion de tabiques con ladrillos de vidrio   1
Construccion de tabiques con ladrillos de vidrio 1YAJAIRA CARDENAS
 
Digitaal erf 7 juni 2012
Digitaal erf 7 juni 2012Digitaal erf 7 juni 2012
Digitaal erf 7 juni 2012Kennisnet
 
Guia de discapacidad_multiple
Guia de discapacidad_multipleGuia de discapacidad_multiple
Guia de discapacidad_multiplepepefel
 
Convivencia escolar
Convivencia escolarConvivencia escolar
Convivencia escolarFranSerrano
 
A Animal Info Power Point
A Animal Info Power PointA Animal Info Power Point
A Animal Info Power Pointbraxton doe
 
Prova 1. introducció i renaixement
Prova 1. introducció i renaixementProva 1. introducció i renaixement
Prova 1. introducció i renaixementjgutier4
 
การเปิดเผยราคากลาง
การเปิดเผยราคากลางการเปิดเผยราคากลาง
การเปิดเผยราคากลางJerfy JipJip
 
Libraries And Technology (a.k.a. You Snooze, You Lose!)
Libraries And Technology (a.k.a. You Snooze, You Lose!)Libraries And Technology (a.k.a. You Snooze, You Lose!)
Libraries And Technology (a.k.a. You Snooze, You Lose!)Beth Carpenter
 
Presentationskillsv1 090808075730-phpapp01
Presentationskillsv1 090808075730-phpapp01Presentationskillsv1 090808075730-phpapp01
Presentationskillsv1 090808075730-phpapp01loramparlove
 
Instrukcja
InstrukcjaInstrukcja
InstrukcjaAneta154
 

En vedette (20)

DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...
DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...
DE LOS HOMÍNIDOS AL HOMO SAPIENS SAPIENS.(Gema Calvo, Javier Álvarezy Pilar G...
 
Reporte proyecto formativo 773907 - 752363
Reporte proyecto formativo   773907 - 752363Reporte proyecto formativo   773907 - 752363
Reporte proyecto formativo 773907 - 752363
 
George Toxicol2008[2]
George Toxicol2008[2]George Toxicol2008[2]
George Toxicol2008[2]
 
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011
Hadfield - Marketing to Developers - Microsoft VSIP Summit Oct 2011
 
Construccion de tabiques con ladrillos de vidrio 1
Construccion de tabiques con ladrillos de vidrio   1Construccion de tabiques con ladrillos de vidrio   1
Construccion de tabiques con ladrillos de vidrio 1
 
Digitaal erf 7 juni 2012
Digitaal erf 7 juni 2012Digitaal erf 7 juni 2012
Digitaal erf 7 juni 2012
 
Il Turista Informato al TBE
Il Turista Informato al TBEIl Turista Informato al TBE
Il Turista Informato al TBE
 
Guia de discapacidad_multiple
Guia de discapacidad_multipleGuia de discapacidad_multiple
Guia de discapacidad_multiple
 
Los ángeles 1932
Los ángeles 1932Los ángeles 1932
Los ángeles 1932
 
Sissejuhatus
SissejuhatusSissejuhatus
Sissejuhatus
 
11 points to track daily activities using new cdr
11 points to track daily activities using new cdr11 points to track daily activities using new cdr
11 points to track daily activities using new cdr
 
Convivencia escolar
Convivencia escolarConvivencia escolar
Convivencia escolar
 
A Animal Info Power Point
A Animal Info Power PointA Animal Info Power Point
A Animal Info Power Point
 
Normatividad
Normatividad Normatividad
Normatividad
 
Prova 1. introducció i renaixement
Prova 1. introducció i renaixementProva 1. introducció i renaixement
Prova 1. introducció i renaixement
 
การเปิดเผยราคากลาง
การเปิดเผยราคากลางการเปิดเผยราคากลาง
การเปิดเผยราคากลาง
 
Libraries And Technology (a.k.a. You Snooze, You Lose!)
Libraries And Technology (a.k.a. You Snooze, You Lose!)Libraries And Technology (a.k.a. You Snooze, You Lose!)
Libraries And Technology (a.k.a. You Snooze, You Lose!)
 
Radio planning
Radio planningRadio planning
Radio planning
 
Presentationskillsv1 090808075730-phpapp01
Presentationskillsv1 090808075730-phpapp01Presentationskillsv1 090808075730-phpapp01
Presentationskillsv1 090808075730-phpapp01
 
Instrukcja
InstrukcjaInstrukcja
Instrukcja
 

Similaire à Python Conjuntos: Uma introdução ao tipo set

011 programando em python - conjuntos
011   programando em python - conjuntos011   programando em python - conjuntos
011 programando em python - conjuntosLeandro Barbosa
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasLeonardo Melo Santos
 
Android - Dicas de Performance
Android - Dicas de PerformanceAndroid - Dicas de Performance
Android - Dicas de PerformanceAmélia Pessoa
 

Similaire à Python Conjuntos: Uma introdução ao tipo set (8)

Programando em python: conjuntos
Programando em python:   conjuntosProgramando em python:   conjuntos
Programando em python: conjuntos
 
011 programando em python - conjuntos
011   programando em python - conjuntos011   programando em python - conjuntos
011 programando em python - conjuntos
 
Java básico - Módulo 06: Array
Java básico - Módulo 06: ArrayJava básico - Módulo 06: Array
Java básico - Módulo 06: Array
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
 
python
pythonpython
python
 
Android - Dicas de Performance
Android - Dicas de PerformanceAndroid - Dicas de Performance
Android - Dicas de Performance
 
05 classes utilitarias
05   classes utilitarias05   classes utilitarias
05 classes utilitarias
 
Java 06 Strings Arrays
Java 06 Strings ArraysJava 06 Strings Arrays
Java 06 Strings Arrays
 

Plus de Victor Marcelino

08 programando em python - recursao
 08   programando em python - recursao 08   programando em python - recursao
08 programando em python - recursaoVictor Marcelino
 
09 programando em python - classes
 09   programando em python - classes 09   programando em python - classes
09 programando em python - classesVictor Marcelino
 
01 programando em python - sistemas de numeracao
 01   programando em python - sistemas de numeracao 01   programando em python - sistemas de numeracao
01 programando em python - sistemas de numeracaoVictor Marcelino
 
00 programando em python - introducao
 00   programando em python - introducao 00   programando em python - introducao
00 programando em python - introducaoVictor Marcelino
 
07 programando em python - funcoes
 07   programando em python - funcoes 07   programando em python - funcoes
07 programando em python - funcoesVictor Marcelino
 
12 programando em python - modulos
 12   programando em python - modulos 12   programando em python - modulos
12 programando em python - modulosVictor Marcelino
 
03 programando em python - comandos basicos
 03   programando em python - comandos basicos 03   programando em python - comandos basicos
03 programando em python - comandos basicosVictor Marcelino
 
14 programando em python - interfaces graficas com tk
 14   programando em python - interfaces graficas com tk 14   programando em python - interfaces graficas com tk
14 programando em python - interfaces graficas com tkVictor Marcelino
 
13 programando em python - arquivos
 13   programando em python - arquivos 13   programando em python - arquivos
13 programando em python - arquivosVictor Marcelino
 
10 programando em python - excecoes
 10   programando em python - excecoes 10   programando em python - excecoes
10 programando em python - excecoesVictor Marcelino
 
06 programando em python - dicionarios
 06   programando em python - dicionarios 06   programando em python - dicionarios
06 programando em python - dicionariosVictor Marcelino
 
05 programando em python - tuplas e strings
 05   programando em python - tuplas e strings 05   programando em python - tuplas e strings
05 programando em python - tuplas e stringsVictor Marcelino
 
04 programando em python - listas
 04   programando em python - listas 04   programando em python - listas
04 programando em python - listasVictor Marcelino
 
02 programando em python - tipos basicos
 02   programando em python - tipos basicos 02   programando em python - tipos basicos
02 programando em python - tipos basicosVictor Marcelino
 
Python for-unix-and-linux-system-administration
Python for-unix-and-linux-system-administrationPython for-unix-and-linux-system-administration
Python for-unix-and-linux-system-administrationVictor Marcelino
 

Plus de Victor Marcelino (16)

Aprendendo python
Aprendendo pythonAprendendo python
Aprendendo python
 
08 programando em python - recursao
 08   programando em python - recursao 08   programando em python - recursao
08 programando em python - recursao
 
09 programando em python - classes
 09   programando em python - classes 09   programando em python - classes
09 programando em python - classes
 
01 programando em python - sistemas de numeracao
 01   programando em python - sistemas de numeracao 01   programando em python - sistemas de numeracao
01 programando em python - sistemas de numeracao
 
00 programando em python - introducao
 00   programando em python - introducao 00   programando em python - introducao
00 programando em python - introducao
 
07 programando em python - funcoes
 07   programando em python - funcoes 07   programando em python - funcoes
07 programando em python - funcoes
 
12 programando em python - modulos
 12   programando em python - modulos 12   programando em python - modulos
12 programando em python - modulos
 
03 programando em python - comandos basicos
 03   programando em python - comandos basicos 03   programando em python - comandos basicos
03 programando em python - comandos basicos
 
14 programando em python - interfaces graficas com tk
 14   programando em python - interfaces graficas com tk 14   programando em python - interfaces graficas com tk
14 programando em python - interfaces graficas com tk
 
13 programando em python - arquivos
 13   programando em python - arquivos 13   programando em python - arquivos
13 programando em python - arquivos
 
10 programando em python - excecoes
 10   programando em python - excecoes 10   programando em python - excecoes
10 programando em python - excecoes
 
06 programando em python - dicionarios
 06   programando em python - dicionarios 06   programando em python - dicionarios
06 programando em python - dicionarios
 
05 programando em python - tuplas e strings
 05   programando em python - tuplas e strings 05   programando em python - tuplas e strings
05 programando em python - tuplas e strings
 
04 programando em python - listas
 04   programando em python - listas 04   programando em python - listas
04 programando em python - listas
 
02 programando em python - tipos basicos
 02   programando em python - tipos basicos 02   programando em python - tipos basicos
02 programando em python - tipos basicos
 
Python for-unix-and-linux-system-administration
Python for-unix-and-linux-system-administrationPython for-unix-and-linux-system-administration
Python for-unix-and-linux-system-administration
 

Dernier

DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfIedaGoethe
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxconcelhovdragons
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfIedaGoethe
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundonialb
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirIedaGoethe
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Centro Jacques Delors
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxfabiolalopesmartins1
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfcartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfIedaGoethe
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Susana Stoffel
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOColégio Santa Teresinha
 

Dernier (20)

DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdf
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundo
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimir
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptx
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfcartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
 

Python Conjuntos: Uma introdução ao tipo set

  • 2. Conjuntos  Um conjunto é uma coleção de valores distintos  Pode­se implementar conjuntos de diversas formas  Uma lista de valores    Têm­se que tomar o cuidado de evitar valores duplicados Um dicionário   As chaves de um dicionário são necessariamente únicas O valor associado a cada chave pode ser qualquer um  Python suporta um tipo primitivo chamado set que  implementa conjuntos  Mais apropriado do que o uso de listas ou dicionários
  • 3. O tipo set  Pode­se construir um set usando a construção set(sequência)   Onde sequência é uma sequência qualquer, como uma lista,  uma tupla ou uma string Caso use­se uma lista, os elementos devem ser imutáveis  Exemplos: >>> set((1,2,3)) set([1, 2, 3]) >>> set ("xxabc") set(['a', 'x', 'c', 'b']) >>> set ([1,(1,2),3,1]) set([(1, 2), 1, 3]) >>> set ([1,[1,2],3,1]) ERROR...
  • 4. Trabalhando com sets  x in s → True se o elemento x pertence a s  s.add(x) →  Inclui o elemento x em s  s.copy() →  Retorna uma cópia de s  s.union(r) →  Retorna a união entre s e r  s.intersection(r) →  Retorna a interseção entre s e r  s.difference(r) →  Retorna a diferença entre s e r  list(s) →  Retorna os elementos de s numa lista  tuple(s) →  Retorna os elementos de s numa tupla
  • 5. Exemplos >>> s = set([1,2,3]) >>> r = set([2,5,9,1]) >>> 1 in s True >>> 1 in r True >>> s.union(r) set([1, 2, 3, 5, 9]) >>> s.intersection(r) set([1, 2]) >>> s.difference(r) set([3]) >>> r.difference(s) set([9, 5]) >>> s.add(5) >>> s.intersection(r) set([1, 2, 5])
  • 6. Iterando sobre sets  Pode­se também usar o comando for com sets  Observe­se que a iteração não necessariamente visita os  elementos na mesma ordem em que eles foram inseridos  no conjunto  Exemplo: >>> s = set([1,2,9,100,"a"]) >>> for x in s: print x, a 1 2 100 9
  • 7. Outros métodos  s.discard(x) →  Exclui o elemento x de s (se existir)  s.issubset(r) →  True sse s contido em r  s.issuperset(r) →  True sse s contém r  s.symmetric_difference(r) →  Retorna a diferença  simétrica entre s e r, isto é, a união entre s e r menos a  interseção de s e r  s.update(r) →  mesmo que s = s.union(r)  s.intersection_update(r) →  mesmo que  s = s.intersection(r)  s.difference_update(r) →  mesmo que  s = s.difference(r)
  • 8. Exemplos >>> s = set([1,2,3]) >>> r = set([2,5,9]) >>> s.update(r) >>> s set([1, 2, 3, 5, 9]) >>> s.issuperset(r) True >>> r.issubset(s) True >>> s.discard(5) >>> s set([1, 2, 3, 9]) >>> s.symmetric_difference(r) set([3, 5, 1])