Minicurso de Python

Quem sou?

João Batista

Ciência da Computação

Dev, pesquisador, etc.

Python

Linguagem de programação

Alto nível

Poderosa

Fácil de aprender

Python

Para que serve?

Scripting

Automatização de tarefas

Servidores

...

Geração de Documentos

Python

Ciência de Dados

Inteligência Artificial

Fundamentos de Programação

Introdução à linguagem

Primeiros passos

Instalação

Ferramentas a utilizar

Brincando com o interpretador

Números

Strings

Variáveis

Entrada e Saída

Operadores

Booleanos

Ementa

Windows

Acesse a página oficial do Python

https://www.python.org/

Faça o download da versão 3.7

Instale e seja feliz

Linux

Veja se não está instalado

python --version

Se não estiver:

sudo apt-get install python3
sudo yum install python3
sudo zypper install python3

Debian:

RedHat:

SUSE:

Instalação

Linux:

terminal

Windows:

Jupyter + Anaconda

Replit

Ferramentas

repl.it/languages/python3

Replit

$ python
Python 3.7.0 (default, Sep 15 2018, 19:13:07) 
[GCC 8.2.1 20180831] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> 1+2
3
>>>
>>> 3*7
21
>>> 
>>> "Hello " + "World!"
'Hello World!'
>>>
>>> exit()
 
 
 
 
 
 
 
 
 

Interpretador

Introdução à
Linguagem

Reter e representar um
valor ou expressão.

Número

Conjunto de caracteres

Lista

Funções

Objeto

...

Variáveis

minhaVariavel = 10

Nome

Operador

de

atribuição

Valor

 
 
 

Variáveis

Cadê o tipo

da variável???

Tipagem Dinâmica

Tipagem Estática

C

Java

Python

JavaScript

type(NOMEDAVARIAVEL)

Variáveis

Regras:

Não começar com um número

Não ser uma palavra reservada

Não conter acentos ou

caracteres especiais

Pode conter o caractere

underline ' _ '

Variáveis

variavel

minhaVariavel

variavel1

1variavel

variável

int

str

inteiro

minha-variavel

minha_variavel

_variavel

variavel

minhaVariavel

variavel1

1variavel

variável

int

str

inteiro

minha-variavel

minha_variavel

_variavel

Variáveis

Números

Qualquer valor numérico

Inteiros

Ponto Flutuante

3    ---> Inteiro
5.5  ---> Ponto Flutuante
0    ---> Inteiro
-7   ---> Inteiro
3.0  ---> Ponto Flutuante
-9.5 ---> Ponto Flutuante

Variáveis

$ python
...

>>>
>>> minhaVar = 10
>>>
>>> minhaVar
10
>>>
>>> minhaOutraVar = 5
>>>
>>> minhaOutraVar
5
>>>
>>> minhaVar + minhaOutraVar
15
>>>
>>> minha Var
10
>>> minhaOutraVar
5
 
 
 
 
 
 
 
 
 
 

Variáveis

>>>
>>> minhaVar = 12
>>>
>>> minhaVar
12
>>>
>>> 12 + 5
17
>>>
>>> minhaVar + minhaOutraVar
17
>>>
 
 
 
 
 
 
 

Variáveis

Strings

Cadeias de caracteres

Acesso individual através do índice

"abcde"
Caractere 0 ---> 'a'
Caractere 1 ---> 'b'
Caractere 2 ---> 'c'
Caractere 3 ---> 'd'
Caractere 4 ---> 'e'

Delimitada pelas aspas

Variáveis

 
>>> nome = "Pedro"
>>>
>>> nome
'Pedro'
>>>
>>> nome[1]
'e'
>>>
>>> nome[0]
'P'
>>>
 
 
 
 
 
 

Variáveis

Booleanos

Admitem dois valores apenas

True

False

Variáveis podem admitir valores booleanos sem serem booleanas

Variáveis

 
>>> verdade = True
>>>
>>> mentira = False
>>>
>>> verdadeiro
True
>>>
>>> mentira
False
>>>
>>> outraVerdade = true
ERRO
 
 
 
 
 
 
 

Variáveis

Chega de interpretador!

Escreva no editor de texto

Salve com a extensão .py

Abra o terminal

python NOMEDOARQUIVO.py

NO LINUX

Clicar em Run

Replit

Liberdade!

 print("Hello World!")

HelloWorld.py

python HelloWorld.py
Hello World!
 
 

Maldição do Hello World

Entrada &
Saída

input()

print()

Recebe um valor do usuário

Pode armazená-lo numa variável

'Imprime' um valor na tela

Pode recebê-lo através de uma variável

funções

Entrada & Saída

Conjunto de comandos

Realiza tarefas específicas

Preferencialmente reutilizável

Funções

input()

minhaVariavel = input("Digite o valor: ")

print()

print("Vou ser imprimido!")
 
 
 
 
 
 
 
 

Entrada & Saída

nome = input("Quem é voce? ")
print("_______________________")
print("Bem vindo à UFC")
print(nome)

saudacao.py

$ python saudacao.py
Quem é voce? Pedro
_______________________
Bem vindo à UFC
Pedro
 
 
 
 
 
 
 

Entrada & Saída

Usados em strings

Escrever caracteres que não

poderiam ser escritos

ex: ""

Caractere de escape

Caracteres Especiais

Quebra de linha:

TAB Horizontal:

Aspas:

Barra invertida:

...

\n

\t

\"  ou \'

\\

Caracteres Especiais

nome = input("Quem é voce? \n")

print("\nBem vindo à \"UFC\"")
print(nome)

IO.py

$ python IO.py
Quem é voce? 
Pedro

Bem vindo à "UFC"
Pedro
 
 
 
 
 
 
 

Entrada & Saída

nome = input("Quem é voce? \n")

print("\nBem vindo à \"UFC\" ", nome)

IO.py

$ python IO.py
Quem é voce? 
Pedro

Bem vindo à "UFC" Pedro
 
 
 
 

Entrada & Saída

str() e int()

a = input("Digite um numero")
b = a + 1 --> ERRO
a = int(a)
b = a + 1 --> OK

Converte dados em string ou inteiro

Entrada & Saída

Manipulam o valor de expressões

+ - x /

Aritméticos

Relacionais

Atributivos

Lógicos

Binários

Operadores

Aritméticos

Adição:

Subtração:

Multiplicação:

Divisão:

Divisão inteira:

Módulo:

Expoente:

+

-

*

/

//

%

**

res = 1 + 2  --> 3
res = 1 - 2  --> -1
res = 3 * 7  --> 21
res = 7 / 3  --> 2.33...
res = 7 // 3  --> 2
res = 7 % 3  --> 1
res = 3 ** 2 --> 9

Operadores

Concatenação

+

a = "Hello"
b = "World"
c = a + b --> "HelloWorld"
print(a + b) --> 'HelloWorld'
print(a + " " + b) --> 'Hello World'

Junta duas strings

Operadores

a = input("Digite um numero")
b = a + 1 --> ERRO
a = int(a)
b = a + 1 --> OK
print("O valor de B é: " + b) --> ERRO
print("O valor de B é: " + str(b) )
b = str(b)
print("O valor de B é: " + b)

Operadores

b = 5
print("O valor de B é: " + b) --> ERRO
print("O valor de B é: ", b)  --> Correto

Operadores

Parenteses

( )

a = 4 * 2 + 3 ---> 11
b = (4 * 2) + 3 --> 11
c = 4 * (2 + 3) --> 20
d = 2 * (1 + ( 3 * (7+4) ) ) --> 

Define a ordem da execução

dos operadores

68

Operadores

Relacionais

Igualdade:

Desigualdade:

Maior que:

Menor que:

Maior ou igual:

Menor ou igual:

==

!=

>

<

>=

<=

a == b --> False
a != b --> True
a <> b --> True
a > b  --> False
a < b  --> True
a >= b --> False
a <= a --> True

<>

a = 10
b = 20

Operadores

Atributivos

Atribuição

Atributivos com operações

=

+=

res = 1
a += b --> a = a + b --> a = 30

-=

*=

/=

%=

**=

//=

a = 10 & b = 20
a -= b --> a = a - b --> a = -10
a *= b --> a = a * b --> a = 200
a /= b --> a = a / b --> a = 0.5
 
 
 
 
 
 
 
 
 
 
 
 

Operadores

Lógicos

"E" lógico

and

vdd and mnt --> False

"Ou" lógico

vdd or mnt  --> True

"Não" lógico

not vdd     --> False

or

not

vdd and mnt --> False
vdd or vdd  --> True
not mnt     --> True
vdd = True
mnt = False

Operadores

Número 0 (Zero):

String vazia (""):

String de espaço (" "):

Qualquer outro número:

Qualquer coisa que tenha

valor definido:

True

True

True

False

False

Valores Implícitos

not: inverte o valor de algo

not not: inverte duas vezes

mostra o valor booleano de algo

$ python
>>>
>>> not True
False
>>>
>>> not not True
True
>>>
>>> not not 3
True
>>>
 
 
 
 
 
 
 

Valores Implícitos

Não possuem valor algum

Não afeta a funcionalidade do código

Usados para descrever algo no código

a = input("Digite seu nome")

# Troca as letras 'a' por 'b' e 'c' por 'd'

a.replace('a', 'b')
a.replace('c', 'd')

Boa prática

#

 
 
 

Comentários

Conheceram Python

Criamos variáveis

Números, Strings & Booleanos

Como criar um arquivo .py

Mecanismos de entrada e saída

Manipulação com operadores

Revisão

Fazer aqui!

Exercícios

Link dos exercícios & respostas:

A ser colocado

Receba um número X do usuário

Atividade 1

Imprimir na tela:

X

Metade de X

Dobro de X

Quadrado de X

Raiz Quadrada de X

X elevado à X

X-ésima raiz de X

OBS: Assuma X != 0

Resolver Equação de 1° Grau

Atividade 2

Formato: Ax + B = 0

Recebe do usuário:

Coeficiente A

Coeficiente B

Imprime na tela:

Raiz da equação

OBS: Assumir A != 0

Saudação do futuro

Atividade 3

Recebe do usuário:

Dia do mês

Nome do usuário

Imprime na tela:

"Olá NOME!"

"Hoje é ..."

"Ontem foi ..."

"Amanhã será ..."

OBS:
Assuma:

2 <= Dia <= 30

Tabela Verdade

Atividade 4

Recebe do usuário:

3 Valores Lógicos ( A, B, C )

Legenda

^ = AND     v = OR       ~ = NOT

A ^ B A ^ B ^ C (~A v B) ^ C A ^ False
A ^ C ~A v B ~A ^ ~B ^ ~C A ^ ~A
B v C ~A v ~C ~(A v B v C) A v ~A

OBS:
1 = True
0 = False

Quantos dias faltam?

Atividade 5

Receber:

Data de hoje (Dia, Mês, Ano separados)

Outra data no futuro

Imprimir quantos dias faltam até lá

OBS:

Assumir meses em números (1 ... 12)
Assumir que todo mês tem 30 dias

Made with Slides.com