0% acharam este documento útil (0 voto)
45 visualizações11 páginas

Linguagem de Programação

O documento apresenta uma introdução à linguagem de programação Python, abordando seus conceitos básicos, ferramentas e primeiros passos para programação nesta linguagem.

Enviado por

Alberto Gomes
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
45 visualizações11 páginas

Linguagem de Programação

O documento apresenta uma introdução à linguagem de programação Python, abordando seus conceitos básicos, ferramentas e primeiros passos para programação nesta linguagem.

Enviado por

Alberto Gomes
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 11

• Unidade de Ensino: 01

• Competência da Unidade: Conhecer a linguagem de programação


Python

LINGUAGEM DE • Resumo: Saber utilizar modelos de programação na linguagem

PROGRAMAÇÃO Python.

• Palavras-chave: Linguagem de programação; Python;


Linguagem de programação: Programação; Desenvolvimento; Algoritmos.
Conhecendo Python
• Título da Teleaula: Linguagem de programação: Conhecendo

Prof. Me. Wesley Viana Python

• Teleaula nº: 01

1 2

Contextualização
• Linguagem de programação: Conhecendo Python

• A linguagem Python Linguagem de


• Ferramentas
programação:
Conhecendo Python
• Exemplos de códigos

3 4

O que é Linguagem de Programação? Primeiros passo em Python:


• Mito “Hello World”, acessar https://trinket.io/python, digite o
• As linguagens de programação foram criadas para solucionar comando, print("hello world!")
qualquer tipo de problema na área tecnológica computacional.

• Cada linguagem possui suas particularidades.

• Permite que um programador crie programas a partir de um


conjunto de ordens, ações consecutivas, dados e algoritmos.

• Python é uma linguagem de script de alto nível, de tipagem forte


e dinâmica

5 6

1
Primeiros passo em Python: Primeiros passo em Python:

• Criado no início dos anos 1990 por Guido van Rossum no Stichting • Porque Python?
Mathematisch Centrum (CWI), na Holanda, foi sucessor de uma
linguagem chamada ABC.
Python é uma linguagem de programação orientada a objetos, clara e
poderosa.
• Em 2001, a Python Software Foundation (PSF) foi formada, uma
organização sem fins lucrativos criada especificamente para possuir a
Mais referências em:
propriedade intelectual relacionada ao Python.
https://wiki.python.org/moin/BeginnersGuide/Overview

7 8

Primeiros passo em Python: Primeiros passo em Python:


• Inúmeras bibliotecas que estendem seu poder de atuação.

• Usa sintaxe clara, facilitando a leitura dos programas que você


escreve; • Linguagem interpretada, ou seja, uma vez escrito o código, este não
precisa ser convertido em linguagem de máquina por um processo de

• Linguagem fácil, ideal para o desenvolvimento de protótipos e outras compilação;

tarefas de programação;

• Permite atribuição múltipla. Podemos atribuir valores a mais de uma

• Grande biblioteca padrão, suporta muitas tarefas de programação; variável em uma única instrução. Por exemplo, a, b = 2, 3.

9 10

Primeiros passo em Python: Primeiros passo em Python:


• Uma das grandes características da linguagem é sua sintaxe. As • Instalação do interpretador Python
regras são definidas pelo PEP 8 (Python Enhancement Proposal) e https://www.python.org/downloads/
dizem respeito a formatação, identação, parâmetros em funções e
Na instalação marcar a opção Add Python 3.X to PATH.
tudo mais que possa estar relacionado à sintaxe do código.

• O interpretador Python 3 utiliza unicode por padrão, o que torna


possível usar nomes de variáveis com acento e até outros caracteres
especiais, porém não é uma boa prática.

• Códigos em Python pode ser feito tanto em local quanto em nuvem.

11 12

2
Primeiros passo em Python: Primeiros passo em Python:
• Já podemos digitar comandos python • Mais ferramentas:

Para implementação de soluções, utiliza-se a IDE, (Integrated


Development Environment) ou Ambiente de Desenvolvimento Integrado.

Duas IDE’s disputam a preferência dos desenvolvedores Python, o


PyCharm e o Visual Studio Code (VSCode).

PyCharm: Professional e Community, sendo a primeira paga e a


segunda gratuita.

VSCode: Gratuito

13 14

Primeiros passo em Python: Primeiros passo em Python:


• Mais ferramentas (Iniciante): • Mais ferramentas :

Python Anaconda (https://www.anaconda.com/distribution/). Consiste na união Google Colaboratory (Colab) https://colab.research.google.com/notebooks/


de ferramentas Python, compostas por bibliotecas e IDE’s

Especialmente adequado para aprendizado de máquina, análise de dados e


Possuí tanto o interpretador Python quanto bibliotecas, duas interfaces de educação. Colab é um serviço de notebook Jupyter hospedado que não requer
desenvolvimento: a IDE spyder e o projeto Jupyter. configuração para ser usado.

Grande diferencial do projeto Anaconda é ter o Jupyter Notebook Devido a facilidade e vantagens do Colab, indicamos essa ferramenta como
(https://jupyter.org/) integrado na instalação, principalmente para o uso principal meio de trabalho para essa disciplina.
sistemas de controle de versão (como git / GitHub).

15 16

Variáveis e tipos básicos de dados em Python: Variáveis e tipos básicos de dados em Python:
• Veja alguns exemplos:

• Variáveis são espaços alocados na memória RAM para guardar valores Para saber o tipo de dado que uma variável guarda, podemos imprimir
temporariamente. seu tipo usando a função type() , veja como:

• Em Python, esses espaços não precisam ser tipados, a variável pode ser
alocada sem especificar o tipo de dado que ela aguardará.

• As variáveis são tipadas dinamicamente nessa linguagem.

17 18

3
Variáveis e tipos básicos de dados em Python: Variáveis e tipos básicos de dados em Python:
• Em Python, tudo é objeto! Por isso os tipos de dados aparecem com a • Temos uma variedade de formas de imprimir texto e variável em Python.
palavra "class". Vejamos algumas: podemos usar formatadores de caracteres (igual em C),
podemos usar a função format() e podemos criar uma string formatada.
Vejamos cada um: https://colab.research.google.com
• Função input() faz a leitura de um valor digitado. Veja como usar:

Modo 1: usando formatadores de caracteres (igual na linguagem C):


nome = input("Digite um nome: ")
print("Olá %s, bem vindo a disciplina de programação. Parabéns pelo seu
print(nome)
primeiro hello world" % (nome))

19 20

Variáveis e tipos básicos de dados em Python: Variáveis e tipos básicos de dados em Python:
• Usamos o hash # para criar comentários de uma linha.

Modo 2: usando a função format() para imprimir variável e texto:

print("Olá {}, bem vindo a disciplina de programação. Parabéns pelo seu • Nessa PEP, a 498, o autor destaca o uso do "modo 3" como a melhor opção
primeiro hello world".format(nome)) chamando-a de "f-strings".

Modo 3: usando strings formatadas • As strings formatadas com "f-strings" só podem ser compiladas com o

print(f"Olá {nome}, bem vindo a disciplina de programação. Parabéns pelo seu interpretador Python na versão 3.6.

primeiro hello world")

21 22

Variáveis e tipos básicos de dados em Python: Variáveis e tipos básicos de dados em Python:
• Resumo das operações
• Repare como é fundamental conhecer a ordem de procedência das
matemáticas suportadas por
operações para não criar cálculos errados durante a implementação de uma
Python. Com exceção das
solução. Teste você mesmo os códigos no emulador a seguir e aproveite para
funções abs() e pow() e da
explorar outras operações.
notação de potência **, as
outras operações e sintaxe são
similares a diversas linguagens 1. Primeiro resolvem-se os parênteses, do mais interno para o mais externo.
de programação. 2. Exponenciação.

3. Multiplicação e divisão.

4. Soma e subtração.

23 24

4
Variáveis e tipos básicos de dados em Python: Variáveis e tipos básicos de dados em Python:
# Qual o resultado armazenado na variável operacao_1: 25 ou 17?
a=2 x = float(x) # aqui fazemos a conversão da string para o
operacao_1 = 2 + 3 * 5
tipo numérico
b = 0.5
# Qual o resultado armazenado na variável operacao_2: 25 ou 17?
c=1
operacao_2 = (2 + 3) * 5
y = a * x ** 2 + b * x + c
x = input("Digite o valor de x: ")
# Qual o resultado armazenado na variável operacao_3: 4 ou 1?

operacao_3 = 4 / 2 ** 2
print(f"O resultado de y para x = {x} é {y}.")
print(type(a))
# Qual o resultado armazenado na variável operacao_4: 1 ou 5?
print(type(b))
operacao_4 = 13 % 3 + 4
print(type(a))
print(type(c))
print(f"Resultado em operacao_1 = {operacao_1}")
print(type(b))
print(type(x))
print(f"Resultado em operacao_2 = {operacao_2}")
print(type(c))
print(f"Resultado em operacao_3 = {operacao_3}")
print(type(x))
print(f"Resultado em operacao_4 = {operacao_4}")

25 26

Estruturas Lógicas, Condicionais e de Repetição em


Python
Em geral, em um programa você tem opções de caminhos ou
lista de comandos que nada mais são que trechos de códigos que
podem ser executados, devendo-se tomar decisões sobre qual trecho
Estruturas Lógicas, de código será executado em um determinado momento.

Condicionais e de
Repetição em Python

27 28

Estruturas Lógicas, Condicionais e de Repetição em Estruturas Lógicas, Condicionais e de Repetição em


Python Python
Para tomarmos decisões, precisamos dos operadores relacionais: O comando if.. else.. significam se.. senão.. e são usados para constuir
as estruturas condicionais.

29 30

5
Estruturas Lógicas, Condicionais e de Repetição em Estruturas Lógicas, Condicionais e de Repetição em
Python Estrutura encadeada, devemos usar o Python
Estrutura condicional simples: Estrutura composta:
comando "elif", que é uma abreviação de Estruturas lógicas em Python: and, or, not
a=5 a = 10
else if.
b = 10 b=5
Podemos usar os operadores booleanos para construir
codigo_compra = 5111 estruturas de decisões mais complexas.
if a < b: if a < b:
if codigo_compra == 5222:
print("a é menor do que b") print("a é menor do que b")
print("Compra à vista.") Operador booleano and: o resultado será True, quando os dois
r=a+b r=a+b
elif codigo_compra == 5333: argumentos forem verdadeiros.
print(r) print(r)
print("Compra à prazo no boleto.") Operador booleano or: o resultado será True, quando pelo
else:
elif codigo_compra == 5444: menos um dos argumentos for verdadeiro.
print("a é maior do que b")
print("Compra à prazo no cartão.") Operador booleano not: ele irá inverter o valor do argumento.
r=a-b
else: Portanto, se o argumento for verdadeiro, a operação o transformará
print(r)
print("Código não cadastrado") em falso e vice-versa.

31 32

Estruturas Lógicas, Condicionais e de Repetição em


Python Estruturas Lógicas, Condicionais e de Repetição em
Estrutura condicional usando os operadores booleanos. Um Assim como as operações matemáticas Python
aluno só pode ser aprovado caso ele tenha menos de 5 faltas e possuem ordem de precedência, as Estruturas de repetição em
média final igual ou superior a 7. operações booleanas também têm. Essa Python: while e for
prioridade obedece à seguinte ordem: not
primeiro, and em seguida e or por último
qtde_faltas = int(input("Digite a quantidade de faltas: ")) Em uma estrutura de
(BANIN, 2018).
media_final = float(input("Digite a média final: ")) repetição sempre haverá uma
estrutura decisão, pois a
A = 15
repetição de um trecho de
if qtde_faltas <= 5 and media_final >= 7:
B=9 código sempre está associada
print("Aluno aprovado!")
C=9 a uma condição. Ou seja, um
else:
bloco de comandos será
print("Aluno reprovado!")
print(B == C or A < B and A < C) executado repetidas vezes,
até que uma condição não
print((B == C or A < B) and A < C )
seja mais satisfeita.

33 34

Estruturas Lógicas, Condicionais e de Repetição em


Estruturas Lógicas, Condicionais e de Repetição em
Python
O comando while deve ser utilizado para construir e Todo o bloco com a identação de uma Python
controlar a estrutura decisão, sempre que o número de tabulação (4 espaços) faz parte da Na prática é comum utilizarmos esse tipo de estrutura de
repetições não seja conhecido. estrutura de repetição. repetição, com while, para deixarmos serviços executando em
Lembre: todos os blocos de comandos em servidores.
Python são controlados pela indentação.
numero = 1

while numero != 0: A instrução Python for itera sobre os itens de qualquer


numero = int(input("Digite um número: ")) sequência, por exemplo, iterar sobre os caracteres de uma palavra,
if numero % 2 == 0: pois uma palavra é um tipo de sequência.
print("Número par!")

else:

print("Número ímpar!")

35 36

6
Estruturas Lógicas, Condicionais e de Repetição em
Python Estruturas Lógicas, Condicionais e de Repetição em
o comando "for" seguido da variável de Com o comando for, podemos usar a função
Python
controle "c", na sequência o comando "in", enumerate() para retornar à posição de cada Controle de repetição com range, break e continue:
por fim, a sequência sobre a qual a estrutura item, dentro da sequência. Considerando o Python requer uma sequência para que ocorra a iteração. Para
deve iterar. Os dois pontos marcam o início exemplo dado, no qual atribuímos a variável
criar uma sequência numérica de iteração em Python, podemos usar a
do bloco que deve ser repetido. "nome" o valor de "Guido", "G" ocupa a
posição 0 na sequência, "u" ocupa a posição 1,
função range().
"i" a posição 2, e assim por diante. Veja que a
nome = "Guido" variável "i" é usada para capturar a posição e a
for x in range(5):
for c in nome: variável "c" cada caractere da palavra.
print(x)
print(c)

nome = "Guido"
No comando, "x" é a variável de controle, ou seja, a cada
for i, c in enumerate(nome):
iteração do laço, seu valor é alterado, já a função range() foi utilizada
print(f"Posição = {i}, valor = {c}")
para criar um "iterable" numérico (objeto iterável) para que as
repetições acontecesse.

37 38

Estruturas Lógicas, Condicionais e de Repetição em


Python Estruturas Lógicas, Condicionais e de Repetição em
A função range() pode ser usada de três formas
# Método 1 Python
for i in range(10):
distintas: Além de controlar as iterações com o tamanho da sequência,
print(i)
Método 1: passando um único argumento que outra forma de influenciar no fluxo é por meio dos comandos "break" e
representa a quantidade de vezes que o laço deve
# Método 2
"continue". O comando break para a execução de uma estrutura de
repetir;
for i in range(0, 5): repetição, já com o comando continue, conseguimos "pular" algumas
Método 2: passando dois argumentos, um que print(i) execuções, dependendo de uma condição.
representa o início das repetições e outro o limite
superior (NÃO INCLUÍDO) do valor da variável de #Método 3
controle; for i in range(0, 20, 2):

Método 3: Passando três argumentos, um que print(i)

representa o início das repetições; outro, o limite


superior (NÃO INCLUÍDO) do valor da variável de
controle e um que representa o incremento. Observe
as três maneiras a seguir.

39 40

Estruturas Lógicas, Condicionais e de Repetição em


Python
# Exemplo de uso do break # Exemplo de uso do continue

disciplina = "Linguagem de programação" disciplina = "Linguagem de


programação"
for c in disciplina:

if c == 'a':
for c in disciplina: Pense onde podemos
break
if c == 'a': utilizar as vantagens da
continue
else:
else:
programação em
print(c)
print(c) Python

41 42

7
Procura letras e posição
Vamos criar uma solução que procura pelas vogais “A", “o" em
um texto. Toda vez que essas letras são encontradas, devemos
informar que encontramos e qual posição do texto ela está. Nosso
Exercício: Procura texto será:

letras e posição texto = A inserção de comentários no código do programa é


uma prática normal. Em função disso, toda linguagem de programação
tem alguma maneira de permitir que comentários sejam inseridos nos
programas. O objetivo é adicionar descrições em partes do código, seja
para documentá-lo ou para adicionar uma descrição do algoritmo
implementado (BANIN, 2018, p. 45).

43 44

Procura letras e posição


texto = """
A inserção de comentários no código do programa é uma prátic
a normal.
Em função disso, toda linguagem de programação tem alguma
maneira de permitir que comentários sejam inseridos nos progr
amas.
O objetivo é adicionar descrições em partes do código, seja par
Implementando
Soluções em Python
a documentá-
lo ou para adicionar uma descrição do algoritmo implementado
(BANIN, p. 45, 2018)."

Mediante Funções
"""
for i, c in enumerate(texto):
if c == 'A' or c == 'o':
print(f"Vogal '{c}' encontrada, na posição {i}")
else:
continue

45 46

Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
Solução dividindo-a Solução dividindo-a em funções (blocos), além de ser uma
em funções (blocos), além de boa prática de programação, tal abordagem facilita odesenvolvimento.
ser uma boa prática de Função built-in é um objeto que está integrado ao núcleo do
programação, tal abordagem interpretador, não precisa ser feita nenhuma instalação adicional.
facilita a leitura, a manutenção • print() é uma função built-in do interpretador Python.
e a escalabilidade da solução.

• algumas funções que já usamos:


• print() é uma função built-
enumerate(), para retornar a posição de um valor em uma sequência.
in do interpretador Python.
input(), para capturar um valor digitado no teclado.
int() e float(), para converter um valor no tipo inteiro ou float.
range(), para criar uma sequência numérica.

47 48

8
Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
a=2
A função eval() usada no código recebe
b=1 Função definida pelo usuário
como entrada uma string digitada pelo
usuário, que nesse caso é uma equação
Podemos escolher o nome da função, sua entrada e sua saída.
linear. Essa entrada é analisada e avaliada equacao = input("Digite a fórmula geral
Nomes das funções devem estar em minúsculas, com as palavras separadas
da equação linear (a * x + b): ")
como uma expressão Python pela função por underline, conforme necessário, para melhorar a legibilidade.
eval(). Veja que, para cada valor de x, a print(f"\nA entrada do usuário Os nomes de variáveis seguem a mesma convenção que os nomes
fórmula é executada como uma expressão
{equacao} é do tipo {type(equacao)}") de funções.
É preciso abrir e fechar parênteses, pois é dentro dos parênteses
matemática (linha 8) e retorna um valor
que os parâmetros de entrada da função devem ser definidos.
diferente. Prudência para o uso, pois é for x in range(5):
Usamos o comando "def" para indicar que vamos definir uma
fácil alguém externo à aplicação fazer y = eval(equacao) função. Em seguida, escolhemos o nome da função "imprimir_mensagem"
uma "injection" de código intruso. print(f"\nResultado da equação para x
= {x} é {y}")

49 50

Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
A função recebe dois def imprimir_mensagem(disciplina, curso):
Funções com parâmetros definidos e indefinidos
parâmetros. Esses parâmetros são print(f"Minha primeira função em Python
variáveis locais, ou seja, são variáveis desenvolvida na disciplina: {disciplina}, do curso:
Sobre os argumentos que uma função pode receber, para nosso estudo,
que existem somente dentro da {curso}.")
vamos classificar em seis grupos:
função. Na linha 2, imprimimos uma 01. Parâmetro posicional, obrigatório, sem valor default (padrão), tentar um
mensagem usando as variáveis invocar a função, sem passar os parâmetros, acarreta um erro.
passadas como parâmetro e na linha 5, imprimir_mensagem("Python", "ADS")

invocamos a função, passando como def somar(a, b):

parâmetros dois valores do tipo string. return a + b

O valor "Python" vai para o primeiro


r = somar(2, 3)
parâmetro da função e o valor "ADS"
print(r)
vai para o segundo parâmetro.

51 52

Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
02. Parâmetro posicional, obrigatório, com valor default (padrão), quando 03. Parâmetro nominal, obrigatório, sem valor default (padrão). Não mais
a função for invocada, caso nenhum valor seja passado, o valor default é utilizado. importa a posição dos parâmetros, pois eles serão identificados pelo nome, a
chamada da função é obrigatório passar todos os valores e sem valor default
def calcular_desconto(valor, desconto=0): # O parâmetro desconto possui zero valor default def converter_maiuscula(texto, flag_maiuscula):

valor_com_desconto = valor - (valor * desconto) if flag_maiuscula:

return valor_com_desconto return texto.upper()

else:

valor1 = calcular_desconto(100) # Não aplicar nenhum desconto return texto.lower()

valor2 = calcular_desconto(100, 0.25) # Aplicar desconto de 25%

print(f"\nPrimeiro valor a ser pago = {valor1}") texto = converter_maiuscula(flag_maiuscula=True, texto="João") # Passagem nominal de parâmetros

print(f"\nSegundo valor a ser pago = {valor2}") print(texto)

53 54

9
Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
04.Parâmetro nominal, obrigatório, com valor default (padrão), nesse A função poderá receber um def imprimir_parametros(*args):

grupo os parâmetros podem possuir valor default. número diferente de parâmetros a qtde_parametros = len(args)

cada invocação. Esse cenário é o que print(f"Quantidade de parâmetros = {qtde_parametros}")


def converter_minuscula(texto, flag_minuscula=True): # O parâmetro flag_minuscula possui True como
valor default caracteriza os grupos 5 e 6.
if flag_minuscula: for i, valor in enumerate(args):

return texto.lower() print(f"Posição = {i}, valor = {valor}")


05. Parâmetro posicional e não
else:
obrigatório (args), a passagem de print("\nChamada 1")
return texto.upper()

texto1 = converter_minuscula(flag_minuscula=True, texto="LINGUAGEM de Programação")


valores é feita de modo posicial, imprimir_parametros("São Paulo", 10, 23.78, "João")

texto2 = converter_minuscula(texto="LINGUAGEM de Programação") porém a quantidade não é

print(f"\nTexto 1 = {texto1}") conhecida. print("\nChamada 2")

print(f"\nTexto 2 = {texto2}") imprimir_parametros(10, "São Paulo")

55 56

Implementando Soluções em Python Mediante Funções Implementando Soluções em Python Mediante Funções
06. Parâmetro nominal e def imprimir_parametros(**kwargs): Funções anônimas em Python
não obrigatório (kwargs), agora a print(f"Tipo de objeto recebido = {type(kwargs)}\n")
Uma função anônima é uma função que não é construída com o "def" e,
passagem é feita de modo nominal e qtde_parametros = len(kwargs)
por isso, não possui nome. Esse tipo de construção é útil, quando a função faz
print(f"Quantidade de parâmetros = {qtde_parametros}")
não posicional, o que nos permite somente uma ação e é usada uma única vez. Poderoso recurso da linguagem
acessar tanto o valor do parâmetro Python: a expressão "lambda".
for chave, valor in kwargs.items():
quanto o nome da variável que o
print(f"variável = {chave}, valor = {valor}")
armazena.
somar = lambda x, y: x + y
print("\nChamada 1") somar(x=5, y=3)
imprimir_parametros(cidade="São Paulo", idade=33,
nome="João")

print("\nChamada 2")

imprimir_parametros(desconto=10, valor=100)

57 58

Qual a importância de
saber utilizar funções em Recapitulando
linguagem de
programação Python?

59 60

10
Recapitulando
• Primeiros passos em Python

• Variáveis e tipos básicos de dados em Python

• Estruturas Lógicas, Condicionais e de Repetição em Python

• Implementando Soluções em Python Mediante Funções

• Importância de saber utilizar modelos de estrutura de dados

61

11

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy