O documento apresenta os principais conceitos básicos da linguagem Python, incluindo: 1) Como escrever o primeiro programa "Hello World"; 2) Tipos de dados como números, strings e suas operações; 3) Estruturas de dados como listas, dicionários e arquivos.
O documento introduz conceitos básicos de Python, incluindo instalação, tipos de dados, sequências como listas e tuplas, e como Python lida com nomes e atribuições. É destacado que Python é uma linguagem de código aberto orientada a objetos criada por Guido van Rossum nos anos 1990.
Eu investi algum tempo fazendo um material de apoio para o livro Python para Desenvolvedores</a>, do Luis Eduardo Borges. É um conjunto de slides para o capitulo I.
Este documento apresenta uma introdução à linguagem de programação Python 2.7. Resume os principais pontos sobre a origem e criador da linguagem, suas características e tipos de dados suportados, como listas, dicionários, strings e números. Também explica brevemente sobre compilação versus interpretação e os operadores e métodos dos principais tipos de dados.
O documento apresenta as credenciais e especialidades de Jhonathan Davi, incluindo seu trabalho como pesquisador de segurança e desenvolvedor Python. Em seguida, fornece uma introdução à linguagem Python, destacando suas principais características, tipos de dados, estruturas de controle e desafios.
Aula2 ambientação a linguagem deprogramação pythonCleyton Fábio
Este documento fornece uma introdução à linguagem de programação Python, abordando tópicos como: instalação do interpretador Python, tipos de dados primitivos, variáveis, strings, contagem e acesso a caracteres de strings. O documento também explica porque Python é uma boa opção para programação e apresenta alguns comandos básicos como type(), len() e print().
1) O documento apresenta um minicurso de introdução à linguagem de programação Python, abordando tópicos como história, tipos de dados, estruturas de controle, funções, orientação a objetos.
2) São apresentados os principais tipos de dados em Python como números, strings, listas, tuplas e dicionários, assim como estruturas de controle como if/else, for e while.
3) O documento também introduz conceitos como classes, métodos, herança e exceções no paradigma de programação orientada a objetos em Python.
O documento apresenta uma introdução ao desenvolvimento web com Python e Django, abordando a história e características da linguagem Python, o interpretador Python, tipos de dados, operadores, estruturas de controle e outros conceitos básicos da linguagem.
O documento introduz conceitos básicos de Python, incluindo instalação, tipos de dados, sequências como listas e tuplas, e como Python lida com nomes e atribuições. É destacado que Python é uma linguagem de código aberto orientada a objetos criada por Guido van Rossum nos anos 1990.
Eu investi algum tempo fazendo um material de apoio para o livro Python para Desenvolvedores</a>, do Luis Eduardo Borges. É um conjunto de slides para o capitulo I.
Este documento apresenta uma introdução à linguagem de programação Python 2.7. Resume os principais pontos sobre a origem e criador da linguagem, suas características e tipos de dados suportados, como listas, dicionários, strings e números. Também explica brevemente sobre compilação versus interpretação e os operadores e métodos dos principais tipos de dados.
O documento apresenta as credenciais e especialidades de Jhonathan Davi, incluindo seu trabalho como pesquisador de segurança e desenvolvedor Python. Em seguida, fornece uma introdução à linguagem Python, destacando suas principais características, tipos de dados, estruturas de controle e desafios.
Aula2 ambientação a linguagem deprogramação pythonCleyton Fábio
Este documento fornece uma introdução à linguagem de programação Python, abordando tópicos como: instalação do interpretador Python, tipos de dados primitivos, variáveis, strings, contagem e acesso a caracteres de strings. O documento também explica porque Python é uma boa opção para programação e apresenta alguns comandos básicos como type(), len() e print().
1) O documento apresenta um minicurso de introdução à linguagem de programação Python, abordando tópicos como história, tipos de dados, estruturas de controle, funções, orientação a objetos.
2) São apresentados os principais tipos de dados em Python como números, strings, listas, tuplas e dicionários, assim como estruturas de controle como if/else, for e while.
3) O documento também introduz conceitos como classes, métodos, herança e exceções no paradigma de programação orientada a objetos em Python.
O documento apresenta uma introdução ao desenvolvimento web com Python e Django, abordando a história e características da linguagem Python, o interpretador Python, tipos de dados, operadores, estruturas de controle e outros conceitos básicos da linguagem.
Computação Científica com SciPy - Brevíssimo TutorialFabio Spanhol
O documento descreve a biblioteca SciPy, que fornece funções para computação científica em Python. SciPy utiliza as extensões NumPy e Matplotlib e permite realizar tarefas como matemática avançada, processamento de sinais, otimização e estatística. O documento também apresenta exemplos de uso de SciPy para processamento de imagens e simulação de sistemas lineares invariantes no tempo.
O documento apresenta uma introdução ao Python, descrevendo suas principais características como linguagem de programação de alto nível, interpretada e multiplataforma. Apresenta exemplos de uso, tipos de dados, estruturas como listas e dicionários, e ferramentas como IDEs. Por fim, sugere exercícios e referências para aprofundamento no tema.
O documento apresenta um curso introdutório sobre a linguagem de programação Python, abordando tópicos como:
1) O que é Python, incluindo sua tipagem dinâmica e delimitação por indentação;
2) Por que aprender Python, destacando sua simplicidade, expressividade e suporte a múltiplas plataformas;
3) Conceitos básicos da linguagem como tipos numéricos e de dados, listas e métodos.
O documento introduz o conceito de Python como uma linguagem de programação interpretada e dinamicamente tipada. Apresenta alguns tópicos básicos como estruturas de dados como listas e dicionários, além de operadores e funções.
1. O documento apresenta informações sobre o livro "Automate the Boring Stuff with Python" de Al Sweigart, incluindo detalhes sobre direitos autorais, tradução para português e equipe responsável.
2. O livro ensina como automatizar tarefas tediosas usando a linguagem de programação Python.
3. Al Sweigart é o autor do livro original em inglês e desenvolvedor de software baseado em San Francisco.
Este documento apresenta os membros do grupo WebLovers, que inclui 5 pessoas: Giancarlo Silva, Allyson Barros, Daniele Montenegro, Elionai Moura e Sedir Morais. Cada membro é graduando ou graduado em Análise e Desenvolvimento de Sistemas no IFRN e lidera o grupo WebLovers.
Python é uma linguagem de programação multi-paradigma, interpretada e de tipagem dinâmica que possui uma biblioteca extensa. O documento apresenta os objetivos, características, sintaxe básica, controle de fluxo, orientação a objetos, programação funcional e módulos em Python.
O documento apresenta um resumo de 3 frases ou menos sobre o tópico da aula:
1) A aula introduz a linguagem Python, discutindo suas características, instalação e primeiros programas;
2) Também são apresentados tipos de dados básicos, operadores, entrada e saída de dados, estruturas de controle de fluxo como if/else e loops;
3) Por fim, há exemplos mostrando como usar strings, documentação interativa e diferentes formas de laços como for e while.
Pymordida0 Semana de computação da SOCIESC - 2008/10Marco Mendes
O documento apresenta uma introdução ao Python, abordando tópicos como:
- Blocos de código por indentação
- Tipos de dados básicos como números, strings, listas e dicionários
- Operadores e funções com esses tipos de dados
- Listas comprehensions para gerar listas de forma concisa
O documento descreve as principais diferenças entre Python 2.x e Python 3.x, incluindo mudanças nos tipos básicos como strings, inteiros, divisão e comparações, além de alterações na sintaxe como raise, list comprehension e I/O library. O conversor 2to3 é apresentado como forma de atualizar códigos de Python 2.x para Python 3.x.
O documento introduz Python como uma linguagem de programação e mostra como automatizar tarefas maçantes com ela. Explica como baixar e instalar o Python, conhecer o shell interativo, usar operadores e tipos de dados básicos, armazenar valores em variáveis e escrever um programa simples de exemplo.
O documento apresenta uma introdução à sintaxe da linguagem Python, incluindo blocos por indentação, comentários, tipos de dados básicos como números, strings e listas, e operadores. Também discute execução de scripts Python, variáveis e atribuição.
Programando para web com python - Introdução a PythonAlvaro Oliveira
O documento apresenta uma palestra sobre a linguagem de programação Python. Resume os principais pontos da seguinte forma:
1) Apresenta breve histórico da linguagem Python, criada em 1990 por Guido van Rossum com foco em usuários como físicos e engenheiros.
2) Discutem as principais características da linguagem como interpretação, tipagem dinâmica, controle de fluxo por indentação, orientação a objetos e biblioteca padrão rica.
3) Explicam porque Python é uma boa opção para
Este documento apresenta os fundamentos da linguagem Java, incluindo: 1) Uma introdução à linguagem Java e seus tipos primitivos; 2) Estruturas de controle como if/else e switch/case; 3) Estruturas de repetição como for e while. O objetivo é fornecer uma revisão geral dos conceitos básicos da programação em Java.
O documento apresenta os fundamentos da linguagem Java, incluindo tipos de dados, declaração de variáveis, estruturas de controle como if/else e switch/case, e estruturas de repetição como for, while e do/while. O objetivo é fornecer uma revisão geral dos conceitos básicos da programação em Java.
Introdução a Python resume os principais pontos sobre a linguagem Python, incluindo sua criação, tipagem dinâmica, uso em diferentes áreas e bibliotecas, conceitos básicos como variáveis e tipos de dados, estruturas de repetição e condicionais, manipulação de strings e arquivos.
1. O documento descreve operações básicas em Python como variáveis, entrada e saída de dados, e estruturas condicionais IF.
2. Variáveis armazenam valores e tipos de dados como inteiros, floats e strings. Comandos como print exibem saídas e input permitem entrada de dados do usuário.
3. Estruturas IF executam blocos de código condicionalmente dependendo de expressões booleanas, permitindo diferentes fluxos de execução.
9. IA 1 - Introdução a programação em Python.pdfMilvaNnMarluZz
O documento apresenta uma introdução à programação em Python, abordando tópicos como:
1) A história e características da linguagem Python;
2) O ambiente de desenvolvimento em Python;
3) Tipos básicos como inteiros, floats e strings;
4) Estruturas de dados como listas, tuplas e dicionários.
[1] O documento apresenta uma introdução à linguagem de programação Python, descrevendo suas principais características e funcionalidades.
[2] Python é uma linguagem de alto nível, interpretada e orientada a objetos, criada por Guido van Rossum em 1991. Ela possui sintaxe simples, é fácil de aprender e ler, e vem com diversas bibliotecas incorporadas.
[3] A linguagem é multiplataforma, tipagem forte e dinâmica, possui gerenciamento automático de memória e licença compatível
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
Computação Científica com SciPy - Brevíssimo TutorialFabio Spanhol
O documento descreve a biblioteca SciPy, que fornece funções para computação científica em Python. SciPy utiliza as extensões NumPy e Matplotlib e permite realizar tarefas como matemática avançada, processamento de sinais, otimização e estatística. O documento também apresenta exemplos de uso de SciPy para processamento de imagens e simulação de sistemas lineares invariantes no tempo.
O documento apresenta uma introdução ao Python, descrevendo suas principais características como linguagem de programação de alto nível, interpretada e multiplataforma. Apresenta exemplos de uso, tipos de dados, estruturas como listas e dicionários, e ferramentas como IDEs. Por fim, sugere exercícios e referências para aprofundamento no tema.
O documento apresenta um curso introdutório sobre a linguagem de programação Python, abordando tópicos como:
1) O que é Python, incluindo sua tipagem dinâmica e delimitação por indentação;
2) Por que aprender Python, destacando sua simplicidade, expressividade e suporte a múltiplas plataformas;
3) Conceitos básicos da linguagem como tipos numéricos e de dados, listas e métodos.
O documento introduz o conceito de Python como uma linguagem de programação interpretada e dinamicamente tipada. Apresenta alguns tópicos básicos como estruturas de dados como listas e dicionários, além de operadores e funções.
1. O documento apresenta informações sobre o livro "Automate the Boring Stuff with Python" de Al Sweigart, incluindo detalhes sobre direitos autorais, tradução para português e equipe responsável.
2. O livro ensina como automatizar tarefas tediosas usando a linguagem de programação Python.
3. Al Sweigart é o autor do livro original em inglês e desenvolvedor de software baseado em San Francisco.
Este documento apresenta os membros do grupo WebLovers, que inclui 5 pessoas: Giancarlo Silva, Allyson Barros, Daniele Montenegro, Elionai Moura e Sedir Morais. Cada membro é graduando ou graduado em Análise e Desenvolvimento de Sistemas no IFRN e lidera o grupo WebLovers.
Python é uma linguagem de programação multi-paradigma, interpretada e de tipagem dinâmica que possui uma biblioteca extensa. O documento apresenta os objetivos, características, sintaxe básica, controle de fluxo, orientação a objetos, programação funcional e módulos em Python.
O documento apresenta um resumo de 3 frases ou menos sobre o tópico da aula:
1) A aula introduz a linguagem Python, discutindo suas características, instalação e primeiros programas;
2) Também são apresentados tipos de dados básicos, operadores, entrada e saída de dados, estruturas de controle de fluxo como if/else e loops;
3) Por fim, há exemplos mostrando como usar strings, documentação interativa e diferentes formas de laços como for e while.
Pymordida0 Semana de computação da SOCIESC - 2008/10Marco Mendes
O documento apresenta uma introdução ao Python, abordando tópicos como:
- Blocos de código por indentação
- Tipos de dados básicos como números, strings, listas e dicionários
- Operadores e funções com esses tipos de dados
- Listas comprehensions para gerar listas de forma concisa
O documento descreve as principais diferenças entre Python 2.x e Python 3.x, incluindo mudanças nos tipos básicos como strings, inteiros, divisão e comparações, além de alterações na sintaxe como raise, list comprehension e I/O library. O conversor 2to3 é apresentado como forma de atualizar códigos de Python 2.x para Python 3.x.
O documento introduz Python como uma linguagem de programação e mostra como automatizar tarefas maçantes com ela. Explica como baixar e instalar o Python, conhecer o shell interativo, usar operadores e tipos de dados básicos, armazenar valores em variáveis e escrever um programa simples de exemplo.
O documento apresenta uma introdução à sintaxe da linguagem Python, incluindo blocos por indentação, comentários, tipos de dados básicos como números, strings e listas, e operadores. Também discute execução de scripts Python, variáveis e atribuição.
Programando para web com python - Introdução a PythonAlvaro Oliveira
O documento apresenta uma palestra sobre a linguagem de programação Python. Resume os principais pontos da seguinte forma:
1) Apresenta breve histórico da linguagem Python, criada em 1990 por Guido van Rossum com foco em usuários como físicos e engenheiros.
2) Discutem as principais características da linguagem como interpretação, tipagem dinâmica, controle de fluxo por indentação, orientação a objetos e biblioteca padrão rica.
3) Explicam porque Python é uma boa opção para
Este documento apresenta os fundamentos da linguagem Java, incluindo: 1) Uma introdução à linguagem Java e seus tipos primitivos; 2) Estruturas de controle como if/else e switch/case; 3) Estruturas de repetição como for e while. O objetivo é fornecer uma revisão geral dos conceitos básicos da programação em Java.
O documento apresenta os fundamentos da linguagem Java, incluindo tipos de dados, declaração de variáveis, estruturas de controle como if/else e switch/case, e estruturas de repetição como for, while e do/while. O objetivo é fornecer uma revisão geral dos conceitos básicos da programação em Java.
Introdução a Python resume os principais pontos sobre a linguagem Python, incluindo sua criação, tipagem dinâmica, uso em diferentes áreas e bibliotecas, conceitos básicos como variáveis e tipos de dados, estruturas de repetição e condicionais, manipulação de strings e arquivos.
1. O documento descreve operações básicas em Python como variáveis, entrada e saída de dados, e estruturas condicionais IF.
2. Variáveis armazenam valores e tipos de dados como inteiros, floats e strings. Comandos como print exibem saídas e input permitem entrada de dados do usuário.
3. Estruturas IF executam blocos de código condicionalmente dependendo de expressões booleanas, permitindo diferentes fluxos de execução.
9. IA 1 - Introdução a programação em Python.pdfMilvaNnMarluZz
O documento apresenta uma introdução à programação em Python, abordando tópicos como:
1) A história e características da linguagem Python;
2) O ambiente de desenvolvimento em Python;
3) Tipos básicos como inteiros, floats e strings;
4) Estruturas de dados como listas, tuplas e dicionários.
[1] O documento apresenta uma introdução à linguagem de programação Python, descrevendo suas principais características e funcionalidades.
[2] Python é uma linguagem de alto nível, interpretada e orientada a objetos, criada por Guido van Rossum em 1991. Ela possui sintaxe simples, é fácil de aprender e ler, e vem com diversas bibliotecas incorporadas.
[3] A linguagem é multiplataforma, tipagem forte e dinâmica, possui gerenciamento automático de memória e licença compatível
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
7. 7
... entendendo o código...
• Atribuição utiliza = e comparação utiliza ==
Python Aula 03
8. 8
... entendendo o código...
• Atribuição utiliza = e comparação utiliza ==
Python Aula 03
9. 9
... entendendo o código...
• Números: + - * / % tem suas funções
características
• + pode ser usado como concatenação de Strings;
• % pode ser usado para formatar Strings (assim como em C).
Python Aula 03
10. 10
... entendendo o código...
• Números: + - * / % tem suas funções
características
• + pode ser usado como concatenação de Strings;
• % pode ser usado para formatar Strings (assim como em C).
Python Aula 03
11. 11
... entendendo o código...
• Operadores lógicos são palavras e não símbolos
(||, &&)
• and, or, not
Python Aula 03
12. 12
... entendendo o código...
• Operadores lógicos são palavras e não símbolos
(||, &&)
• and, or, not
Python Aula 03
13. 13
... entendendo o código...
• print é o comando básico para “impressão” na
tela
Python Aula 03
14. 14
... entendendo o código...
• print é o comando básico para “impressão” na
tela
Python Aula 03
15. 15
... entendendo o código...
• E se você quiser receber uma entrada
diretamente do usuário ?
• raw_input() - retorna uma string !
>>> raw_input(‘Digite um valor’)
Exemplo1
Python Aula 03
16. 16
... entendendo o código...
• A primeira atribuição em uma variável também é
responsável por cria-lá.
• Os tipos das variáveis não precisam ser informados;
• Python descobre o tipo da variável por conta própria!
Python Aula 03
17. 17
... entendendo o código...
• A primeira atribuição em uma variável também
é responsável por cria-lá.
• Os tipos das variáveis não precisam ser informados;
• Python descobre o tipo da variável por conta própria!
Python Aula 03
21. 21
Whitespace
• Importante para identação e novas linhas
• Use para quando for para uma próxima linha prematuramente.
• Em Python não há { } !! Isso é para definição de
dicionários (dict)
• Blocos de código definidos por identação!
Exemplo1
Python Aula 03
22. 22
Comentários
• Comentários começam com #
• Convenção: Você pode definir uma “documentação” em string
como primeira linha de qualquer nova função que você definir.
• Muito importante para o desenvolvedor, crítico para o usuário!
Python Aula 03
28. 28
Tipos Básicos
•Strings
• “abc” ou ‘abc’
•Operadores de expressão de Python e sua precedência
•http://docs.python.org/reference/expressions.html#summary
Exemplo1.py
Python Aula 03
29. 29
Comandos básicos
• Alguns comandos básicos que podem ajudar no
ínicio!
• dir(element) - todos os atributos e métodos que estão associados a
elemento.
• type(element) - Descobrir o tipo do objeto!
• import - importe módulos para uso no seu código!
Python Aula 03
30. 30
Exercício 01
• Faça um programa que peça 2 números e um real.
• Calcule e mostre:
• O produto do dobro do primeiro com a metade do segundo
• A soma do triplo do primeiro com o terceiro
• O terceiro elevado ao cubo
Python Aula 03
32. 32
Atribuição
• Atribuição de uma variável em Python significa criar um
rótulo para armazenar uma referência para algum objeto.
• Atribuição cria referências e não cópias!
• Inferência do tipo da referência baseado no tipo de dado atribuído
• A referência é deletada por meio de Garbage Collection
• Quando o objeto deixa de ser referenciado por nenhum outro
rótulo(variável).
Python Aula 03
33. 33
Atribuição
• Lembre-se que Python a tipagem é dinâmica!
• Declarar variáveis sem atribuí-las irá levantar um erro!
Python Aula 03
34. 34
Atribuição
• Você pode inicializar várias variáveis de uma só vez!
• x = y = z = 2.0
• Rótulos de variáveis são Case Sensitive e não podem
iniciar com número. Números, letras e underscores são
permitidos!
• bob bob_2 _bob _2_bob bob_2 BoB
• Não esquecer das palavras reservadas!
Python Aula 03
35. 35
Atribuição
• Entendendo manipulação de atribuição de referências
• x = y não significa que você fez uma cópia de y!
• x = y o que realmente faz é x referencia ao objeto que y referencia!
• O que realmente acontece por trás dessa simples
atribuição:
Python Aula 03
36. 36
Atribuição
• Mas e se fizermos isso ?! Qual será o valor de x ?
>>> x = “casa”
>>> y = x
>>> x = “fazenda”
>>> print x
Python Aula 03
37. 37
Atribuição
• Mas e se fizermos isso ?! Qual será o valor de x ?
• Do mesmo jeito que nós esperávamos! Dados nativos são
imutáveis! (String, Inteiros, float, complexos).
>>> x = “casa”
>>> y = x
>>> y = “fazenda”
>>> print x
>>> x = “casa” #cria 3, x referencia ao objeto string “casa”
>>> y = x # Cria variavel y, referencia ao objeto string
“casa”
>>> y = “fazenda” #Cria referencia ao objeto string “fazenda”
>>> print x # Nenhum efeito em x, ainda referencia “casa”
>>> casa
Python Aula 03
39. 39
Listas, Strings e Tuplas
• Todos os três são Sequências!
• Podem ser indexados por algum valor ordinal posicional
• Todas as operações apresentadas aqui nesta seção podem ser
aplicadas em todos os tipos de sequência
• Listas
• li = [1,2,3, ‘abc’]
• Tuplas
• li = (23, ‘abc’, 4.56, (2,3), ‘def’)
• Strings
• st = “Hello World” st = ‘Hello World’ Exemplos2
Python Aula 03
40. 40
Listas, Strings e Tuplas
• Manipulando sequências!
• Pelo índice a partir de 0 Ex: ti [0]
• Índices podem ser positivos ou negativos! Ex: ti[1] (esq.) ti[-4] (dir.)
• Fracionamento e matrizes!
• li[1:3] L[1:] matrix = [[1,3,4] , [3,5,6] , [7,8,9]]
• Operador in
• retorna um booleano. Checa se um valor está em uma sequência!
• 4 in li
Exemplos2
Python Aula 03
42. 42
Operacões em Listas
• Operador + , *
• a = “Hello” + “ World” (concatenação)
• [3] * 4 (repetição)
• Operador len() e append()
• len() - retorna um inteiro com o tamanho da sequência!
• pop() - retira o último elemento da lista (conceito de pilhas!)
• append() - adiciona um elemento ao final da lista!
• Atribuição
• list[0] = ‘3’
• Fazendo cópias de sequência , Cuidado!!!
Exemplos2
Python Aula 03
43. 43
Operacões em Listas
• Qual será o valor de b ?
>>> a = [1,2,3]
>>> b = a
>>> a.append(4)
>>> print b
Python Aula 03
44. 44
Operacões em Listas
• Qual será o valor de b ?
• Surpresa!
• Dados do tipo listas, dicionarios e pré-definidos pelo
usuário são mutáveis!
>>> a = [1,2,3]
>>> b = a
>>> a.append(4)
>>> print b
>>> b = [1,2,3,4]
Python Aula 03
46. 46
Operacões em Listas
• Para fazer cópias de listas
• a = b[:] (2 cópias independentes)
• a = b (os 2 referenciam o mesmo objeto)
• Qual a diferença entre listas e tuplas ?
• Listas são mutáveis e Tuplas imutáveis!
• l = [1,‘abc’,4] t = (1,‘abc’,4,5)
• Atribuição em listas e tuplas
• list[0] = ‘3‘ ok!
• t[0] = 3 NOK!!! (Deve-se criar uma nova tupla! - t = (3, ‘abc’,4,5)
Exemplos2
Python Aula 03
47. 47
Tuplas x Listas
• Listas são mais lentas porém mais poderosas que tuplas
• Listas podem ser modificadas e tem diversos operadores que podem
ser utilizados
• Tuplas são imutáveis e tem menos funcionalidades!
• Para converter entre listas e tuplas ?
• li = list(t)
• t = tuple(li)
Exemplos2
Python Aula 03
50. 50
Strings
• Formatação e conversão de Strings
• Usam os mesmos operadores básicos de lista
• Multi-Strings, Strings com aspas simples e duplas
• Caracteres Speciais e str() e unicode()
Exemplos2
Python Aula 03
51. 51
Strings
• Também uma sequência e é Imutável!
• “42” + 1 (erro!) Use “42” + str(1)
• float(), int() -> string para numéro
• Atribuição
• S = ‘spam’ S[0] = ‘x’ ERRO!!!
• Strings são imutáveis!
• String -> Lista -> String (.join)
• Formatação de string
Exemplos2
Python Aula 03
53. 53
Exercício 03
• Crie uma lista com o nome de 10 pessoas e sorteie
uma pessoa, depois embaralhe novamente e sorteie
outra (sem repetição)
• Dica: help(random) - módulo para aleatoriedade.
• Faça um programa que permita ao usuário digitar o
nome e em seguida mostrar ao usuário de trás pra
frente somente em letras maiúsculas.
• Dica: Procure pela documentação do help(“”) !
Python Aula 03
55. 55
Dicionários
• Estrutura de dados em forma de coleções onde os items
são armazenados e buscados pela chave em vez do
deslocamento posicional.
• Chaves podem ser quaisquer objetos do tipo imutável
• Valores podem ser de qualquer tipo
• Um dicionário pode armazenar diferentes tipos de valores e é mutável!
• Criando e modificando dicionários!
• d = {“user” : “Marcel” , “password”: 2342}
Exemplos3.py
Python Aula 03
56. 56
Dicionários
• Dicionários não são ordenados!
• Uma nova chave pode aparecer em qualquerr lugar
• Funciona como “hashing”
• Algums métodos:
• has_key(‘eggs’) , clear() , del d[‘key’] , keys(), values(), items(), get() ,
update()
• copy() fazer cópias de dicionários ! (Lembre-se que dicionario é
mutável!)
Exemplos3.py
Python Aula 03
58. 58
Arquivos
• Apenas uma linha para abrir um arquivo!
• file = open(“data”, ‘r’) tipos: r, a, w
• Alguns métodos para operações em arquivos:
• file.read(), readline(), readlines(),
• file.write(), writelines(),
• file.close()
Exemplos3.py
Python Aula 03
60. 60
Expressões lógicas
• True e False são constantes em Python
• False : 0, None, [] , {} , 0.0
• True: Valores Numéricos exceto 0, objeto não vazios
• Um dicionário pode armazenar diferentes tipos de valores e é mutável!
• Operadores de comparação: ==, != , < , <=, etc.
• X == Y ( efetua teste de equivalência de valor)
• X is Y (Testa a identidade do objeto)
Exemplos3.py
Python Aula 03
61. 61
Expressões lógicas
• None é similar ao NULL em linguagem C
• L = [None] * 100 (declara uma lista de 100 items None )
• Operações com or e and
• not -> inversão lógica (true -> false , false -> true)
• and e or (&& e II)
• **Casos especiais: Ele retorna o valor de uma das sub-expressões!
• isinstance(element,type)
• Verifica se um elemento é do tipo type
Exemplos3.py
Python Aula 03
65. 65
Fluxo de Controle
• Várias expressões Python para controlar o fluxo do
programa. Todos eles fazem uso de testes condicionais
booleanos.
• ifs, else
• loops while, for
• assert
Python Aula 03
66. 66
Instruções if
• Não esqueçam da identação em blocos!
• E do (:) após a expressão booleana!
Exemplos4
Python Aula 03
68. 68
Instrução assert
• O uso de assert permite verificar se algo é verdadeiro
durante a execução do programa.
• Se a condição for falsa, o programa é interrompido.
assert(number_of_players < 5)
Python Aula 03
69. 69
Instruções while
• Você pode usar o comando break para sair do loop mais
próximo que a envolve.
• Você pode usar o comando continue para pular para o
ínicio do loop mais próximo que a envolve e pular para a
próxima iteração.
• Você pode usar o comando pass quando você não quer
que se faça nada (instrução vazia)
• Você pode o o bloco else do loop para quando se quer
executar um código quando se sai normalmente do loop
(sem ser por comando break)
Exemplos4
Python Aula 03
71. 71
Instruções for
• Loops for iteram sobre uma sequência de items (listas,
tuplas, string ou quaisquer outros objetos cuja a
linguagem considere como um “iterator”)
• Várias maneiras de iterar sobre um conjunto de items!
• Também possui o bloco else quando se sai normalmente
do loop (similar ao while)
• Função muito usada nos loops for: range()
• range() - Retorna uma lista de números que varia de 0 a ao número
passado como parâmetro.
• xrange() - Retorna uma lista como range() só que libera o item quando
for requisitado! Mais eficiente, porém apenas com items do mesmo tipo
e sem suporte à slicing, repetição e concatenação. Exemplos4
Python Aula 03
73. 73
Instrução zip
•zip() é bastante poderoso, pode unir sequências onde
retorna uma lista de tuplas que se distribuem em pares os
items paralelos extraídos dessas sequências.
•Permite também facilitar a construção de dícionarios!
• x = dict(zip(kes,vals))
Exemplos4.py
Python Aula 03
75. 75
Compreensão de listas
• Funcionalidade muito poderosa da linguagem Python
• Gera uma lista nova aplicando uma função para cada elemento da lista
original.
• Muito usado por programadores Python! (Economia de código!)
• A sintaxe da compreensão de lista usa-se de palavra-
chaves:
• [expression for name in list]
Python Aula 03
76. 76
Compreensão de listas
• Permite também o uso de filtros (deteminam se uma
determina expressão deve ser executada sobre um
membro da lista)
• [expression for name in list if filter ]
Exemplos4.py
Python Aula 03
77. 77
Compreensão de listas
• Você também pode aninhar compreensão de listas!
• [expression for name in [expression for name in
list]]
Exemplos4.py
Python Aula 03
78. 78
Exercícios 05
• Crie duas listas com números de 0 a 9, embaralhe as
listas e sorteie um número de cada um para formar
uma dezena. Repita a operação 5 vezes, assim como
a Mega Sena. Caso a dezena caia como 00 faça o
sorteio novamente até sair outra combinação. Depois
exiba as dezenas sorteadas.
• Faça um programa que imprima na tela apenas os
números ímpares entre 1 e 50 (usando compreensão
de listas!)
Python Aula 03
81. 81
QuickSort
• Algoritmo de ordenação bastante utilizado e muito
eficiente
• Complexidade BigO(nlogn)
1 . Escolher um pivô inicial x;
2. Colocar todos itens com chave menor que a de x à esquerda de x, formando uma
seqüência S1;
3. Colocar todos itens com chave maior que a de x à direita de x, formando uma seqüência
S2;
4. Isto feito, o mesmo processo é aplicado às seqüências S1 e S2, que por sua vez
produzirão novos segmentos;
5. O processo deve ser aplicado sucessivamente às seqüências enquanto
elas tiverem tamanho ≥ 1;
Python Aula 03
82. 82
QuickSort
• Você pensaria assim...
def partition(list, l, e, g):
if list == []:
return (l, e, g)
else:
head = list[0]
if head < e[0]:
return partition(list[1:], l + [head], e, g)
elif head > e[0]:
return partition(list[1:], l, e, g + [head])
else:
return partition(list[1:], l, e + [head], g)
Python Aula 03
83. 83
QuickSort
• Agora que você sabe compreensão de listas, você pode
fazer assim!
def qsort(L):
if len(L) <= 1: return L
return qsort( [ lt for lt in L[1:] if lt < L[0] ] ) + [ L[0] ] +
qsort( [ ge for ge in L[1:] if ge >= L[0] ] )
• E não é que lembra a linguagem funcional Haskel ?!
# qsort [] = []
# qsort (x:xs) = qsort elts_lt_x ++ [x] ++ qsort elts_greq_x
# where
# elts_lt_x = [y | y <- xs, y < x]
# elts_greq_x = [y | y <- xs, y >= x]
Python Aula 03
84. 84
Ordenação
• Mas um programador Pythonico, ainda faria mais
eficiente!
list.sort()
• Utiliza-se de uma implementação nativa de Python para
ordenação de sequências! Mais eficiente, híbrido com
complexidade no pior caso de nlogn.
Python Aula 03
85. 85
Python é muito poderoso!
• Não precisa reinventar a roda! Molde-a para adaptar ao
seu problema!
• A documentação de Python é bastante vasta e há muitas
funcionalidades prontas!
Python Aula 03