Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Introdução à Programação em Python: Variáveis, Tipos de Dados e Estruturas, Notas de estudo de Linguagem de Programação

Uma introdução abrangente à programação em python, cobrindo conceitos essenciais como variáveis, tipos de dados, operadores, estruturas de controle e interpolação de strings. Através de exemplos práticos e explicações claras, o documento guia o leitor na compreensão dos fundamentos da linguagem python, preparando-o para a construção de programas mais complexos.

Tipologia: Notas de estudo

2025

Compartilhado em 26/02/2025

igor-felix-21
igor-felix-21 🇧🇷

1 documento

1 / 12

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Básico do Básico da Programação
Este documento é apenas uma revisão básica, criado para manter um histórico e facilitar a resolução de dúvidas futuras. Todas as
informações relacionadas à programação, independentemente da linguagem, serão incluídas aqui sempre que forem relevantes.
Criando Comentários em diversas linguagens.
Funções Básicas
Tipo de Quebra de Linha
Então porque existe uma diferenciação?
Sinceramente eu não to afim de escrever toda a explicação pra isso então se quiser olhar tá Aqui.Mas o Importante é
\r = CR (Carriage Return) // Usado como quebra de linha no Mac OS anterior à versão X.
\n = LF (Line Feed) // Usado como quebra de linha Unix/Mac OS superior à versão X.
\r\n = CR + LF // Usado como quebra de linha no Windows.
Observação importante: o interpretador do código sempre vai ler o código da esquerda para direita e de cima para baixo.
Em Arquivos com a extensão .py para comentar no código utilizamos o caractere # más somente uma linha.
Utilizando """ (três aspas duplas) é possível comentar mais de uma linha de código, porém é necessário informar que o interpretador
vai ler as linhas pois isto é uma DocString.
Ao selecionar mais de uma linha dentro do código e apertar o atalho CTRL+/ todas as linhas selecionadas serão automaticamente
comentadas.
print(): Imprime no Terminal uma mensagem/valor de variável. é possível passar mais de um argumento separando eles utilizando
uma , (Virgula). para passar um valor que seja um texto, é necessário colocar o texto dentro de "texto" (aspas duplas) ou 'texto'
(aspas simples).
No Visual Studio Code a quebra de linha é feita automaticamente.
É possível passar o argumento " end=' ' " e passar o tipo de quebra de linha que será passada ao final do print() ou escrever um
texto especifico ao final da linha.
`print("Banana",Maçã", end='?') #Saida : Banana Maçã ? ´
quando separamos um argumento utilizando virgulas(,) o próprio interpretador vai utilizar um espaço para separar os
argumentos. porém se usarmos o argumento sep='' podemos escolher o caractere que vai separar os argumentos.
`print("Banana",Maçã", sep='-') #Saida : Banana-Maçã´
\n = O argumento \n ou "new line\line-feed" que quando chamado irá quebrar a linha do texto.
\r = O argumento \r ou "carriage return" faz a exata mesma coisa que o "\n".
type() = primeiramente type não é uma função. porém é possível utilizar type como um argumente dentro de um print para se
descobrir o tipo do argumento que está sendo demonstrado na tela. apenas utilizando type().
print(type("Ricardo")) = <class 'str'>
Sendo que esse 'str' é onde é demonstrado o tipo do argumento passado. no caso "Ricardo" seria uma string então o argumento
demonstrado é 'str'.
F-string{} = Uma F-string é um ==modo de adicionar valores de variáveis em meio uma string ==sem ter que fechar e adicionar uma
virgula para fazer a separação de argumentos.
Mostrar Nome = "Seu Nome é" nome <- Exemplo sem utilizar a Fstring.
Mostrar Nome = f"Seu Nome é {nome}" <- Exemplo com Fstring.
É possível notar que ao utilizar o "f" antes do seu valor string, você está habilitando a possibilidade de utilizar variáveis em meio a
string. para chamar o valor da variável basta envolver o nome da variável em chaves("{ }").
Se o valor dá variável que você deseja colocar seja um número quebrado, é possível diminuir o tamanho do número apenas
adicionando dois pontos dentro dos colchetes e colocando o numero de casas decimais que devem aparecer com um ponto antes do
número. f"Sua Altura é {altura:.3} .
pf3
pf4
pf5
pf8
pf9
pfa

Pré-visualização parcial do texto

Baixe Introdução à Programação em Python: Variáveis, Tipos de Dados e Estruturas e outras Notas de estudo em PDF para Linguagem de Programação, somente na Docsity!

Básico do Básico da Programação

Este documento é apenas uma revisão básica, criado para manter um histórico e facilitar a resolução de dúvidas futuras. Todas as informações relacionadas à programação, independentemente da linguagem, serão incluídas aqui sempre que forem relevantes.

Criando Comentários em diversas linguagens.

Funções Básicas

Tipo de Quebra de Linha

Então porque existe uma diferenciação? Sinceramente eu não to afim de escrever toda a explicação pra isso então se quiser olhar tá Aqui.Mas o Importante é

\r = CR (Carriage Return) // Usado como quebra de linha no Mac OS anterior à versão X. \n = LF (Line Feed) // Usado como quebra de linha Unix/Mac OS superior à versão X. \r\n = CR + LF // Usado como quebra de linha no Windows.

Observação importante: o interpretador do código sempre vai ler o código da esquerda para direita e de cima para baixo.

Em Arquivos com a extensão .py para comentar no código utilizamos o caractere # más somente uma linha. Utilizando """ (três aspas duplas) é possível comentar mais de uma linha de código, porém é necessário informar que o interpretador vai ler as linhas pois isto é uma DocString. Ao selecionar mais de uma linha dentro do código e apertar o atalho CTRL+/ todas as linhas selecionadas serão automaticamente comentadas.

print(): Imprime no Terminal uma mensagem/valor de variável. é possível passar mais de um argumento separando eles utilizando uma , (Virgula). para passar um valor que seja um texto, é necessário colocar o texto dentro de "texto" (aspas duplas) ou 'texto' (aspas simples). No Visual Studio Code a quebra de linha é feita automaticamente. É possível passar o argumento " end=' ' " e passar o tipo de quebra de linha que será passada ao final do print() ou escrever um texto especifico ao final da linha. print("Banana",Maçã", end='?') (^) #Saida : Banana Maçã? ´ quando separamos um argumento utilizando virgulas(,) o próprio interpretador vai utilizar um espaço para separar os argumentos. porém se usarmos o argumento sep='' podemos escolher o caractere que vai separar os argumentos.print("Banana",Maçã", sep='-') #Saida : Banana-Maçã´

\n = O argumento \n ou "new line\line-feed" que quando chamado irá quebrar a linha do texto. \r = O argumento \r ou "carriage return" faz a exata mesma coisa que o "\n".

type() = primeiramente type não é uma função. porém é possível utilizar type como um argumente dentro de um print para se descobrir o tipo do argumento que está sendo demonstrado na tela. apenas utilizando type(). print(type("Ricardo")) = <class 'str'>

Sendo que esse 'str' é onde é demonstrado o tipo do argumento passado. no caso "Ricardo" seria uma string então o argumento demonstrado é 'str'.

F-string{} = Uma F-string é um ==modo de adicionar valores de variáveis em meio uma string ==sem ter que fechar e adicionar uma virgula para fazer a separação de argumentos.

Mostrar Nome = "Seu Nome é" nome <- Exemplo sem utilizar a Fstring. Mostrar Nome = f"Seu Nome é {nome}" <- Exemplo com Fstring.

É possível notar que ao utilizar o "f" antes do seu valor string, você está habilitando a possibilidade de utilizar variáveis em meio a string. para chamar o valor da variável basta envolver o nome da variável em chaves("{ }").

Se o valor dá variável que você deseja colocar seja um número quebrado, é possível diminuir o tamanho do número apenas adicionando dois pontos dentro dos colchetes e colocando o numero de casas decimais que devem aparecer com um ponto antes do número. f"Sua Altura é {altura:.3}.

Ao utilizar a sintaxe de fatiamento (^) [: :] , podemos extrair diferentes partes de uma string, e até mesmo toda a cadeia de caracteres de uma vez. O fatiamento em Python utiliza três argumentos: (^) início , (^) fim e (^) passo , que permitem especificar quais caracteres queremos acessar.

Esses três argumentos nos oferecem uma grande flexibilidade ao trabalhar com strings em Python.

Se ao chamarmos uma variável utilizando uma f-string e colocarmos ao lado do valor da variável um sinal de igual("=") o valor demonstrado será o nome da variável e o valor armazenado nela. (^) print(f"Sua Altura é {altura=}) = "Sua altura é altura=1.80" . Input() = É uma função para se coletar dados do usuário. quando passamos a função input() podemos exibir um texto no terminal para que o usuário veja, logo depois disso o usuário receberá a permissão de digitar algo no terminal. input("Digite seu nome: ") = Digite seu nome: é importante dizer que quando a função input é executada, a leitura do código será pausada na linha onde está a função até que o usuário digite algo.

Normalmente utilizamos esta função para coletar dados digitados pelo usuário para dentro de variáveis, é importante reforçar que qualquer dado "inputado" pelo usuário e armazenado em uma variável será tratado como do tipo "String" então a correção de tipos se faz necessária. Id() = A função id() retorna um identificador único para um objeto na memória. O que ele faz é fornecer um valor que pode ser usado para identificar o objeto durante a execução do programa. Esse identificador é único enquanto o objeto existir na memória. Fatiamento [: :] : O fatiamento em Python é uma técnica utilizada para extrair uma parte específica de uma string, ou seja, para acessar uma subsequência de caracteres de uma string. Como as strings são iteráveis em Python, podemos acessar os caracteres diretamente utilizando seus índices.

variavel = "Olá Mundo" print(variavel[5])

O VALOR RETORNADO SERIA O CARACTERE "U".

O primeiro argumento é o índice de início.

Exemplo de fatiamento Inicio(i)

variavel = "Olá Mundo" print(variavel[5:])

#AQUI JÁ QUE PASSAMOS APENAS 1 ARGUMENTO E LOGO DEPOIS COLOCAMOS OS DOIS PONTOS ESTAMOS PASSANDO APENAS ONDE O FATIAMENTO DEVE SER INICIADO. ENTÃO AQUI O VALOR RETORNADO SERIA "UNDO".

O segundo argumento é o índice final (não incluso).

EXEMPLO DE FATIAAMENTO FIM(F)

variavel = "Olá Mundo" print(variavel[:8])

AQUI JÁ QUE PASSAMOS 1 ARGUMENTO APÓS OS DOIS PONTOS ESTAMOS PASSANDO ONDE O FATIAMENTO DEVE SER FINALIZADO. ENTÃO AQUI O

VALOR RETORNADO SERIA "OLÁ MUND".

#É IMPORTANTE DIZER QUE O FATIAMENTO OCORRERÁ APENAS ATÉ O CARACTERE ANTERIOR AO NÚMERO DE FINALIZAÇÃO.

O terceiro argumento é o passo, que indica a frequência dos caracteres a serem selecionados.

EXEMPLO DE FATIAMENTO PASSO(P)

variavel = "Olá Mundo" print(variavel[0:9:2])

AQUI NÓS PASSAMOS A FREQUÊNCIA DE CARACTERES A SEREM SELECIONADOS. POR PADRÃO O VALOR SERIA 1, MAS AQUI COMO COLOCAMOS 2

O INTERPRETADOR VAI PEGAR 1 CARACTERE E PULAR O PRÓXIMO. ENTÃO O VALOR RETORNADO SERIA "OÁMNO".

Len() = A função len() retorna a quantidade de caracteres presentes em uma string. Por exemplo, no código print(len('olá mundo')) , o valor retornado seria 9 , pois a função conta todos os caracteres da string, incluindo o espaço entre as palavras.

Exemplos Métodos List

Exemplos Concatenando e Estendendo List

Type Convertion

List/Array = O tipo list/array é um tipo de dado que armazena várias informações em formato de lista. Em Python, uma das maneiras de criar uma list é utilizando a função list() , embora essa não seja a forma mais comum. A forma mais usual de criar uma lista é utilizando colchetes ( [] ), como em lista = ['banana', 'maçã', 'uva']. Dentro das listas, é possível armazenar valores de tipos de dados diversos, ou seja, elas não ficam restritas a armazenar apenas um tipo de dado. Por exemplo: lista = ['banana', 2.0, True].

NAS LISTAS TAMBÉM É POSSÍVEL UTILIZAR O ÍNDICE PARA ACESSAR OS OBJETOS DENTRO DELA.

lista = ['roberto','carlos',3.9,True]

print(lista[2]) # AQUI O VALOR RETORNADO SERIA 3.

TAMBEM É POSSIVEL ALTERAR OS VALORES DENTRO DA LISTA UTILIZANDO O ÍNDICE.

lista[1] = 'ricardo' print(lista) # AQUI O VALOR RETORNADO SERIA ['roberto','ricardo', 3.9, True]

É POSSIVEL APAGAR VALORES DE DENTRO DE LISTAS UTILIZANDO A FUNÇÃO "DEL"

del lista[0] print(lista) # AQUI O VALOR RETORNADO SERIA ['ricardo', 3.9, True]

PARA ADICIONAR NOVOS ITENS EM UMA LISTA JÁ EXISTENTE PODEMOS UTILIZAR O MÉTODO APPEND. ESSE MÉTODO IRA ADICIONAR O ITEM

DESEJADO AO FINAL DA LISTA

lista.append('jonas') print(lista) # AQUI O VALOR RETORNADO SERIA ['ricardo', 3.9, True,'jonas']

E PODEMOS REMOVER O ULTIMO ITEM DA LISTA UTILIZANDO O MÉTODO "POP".

lista.pop() print(lista) # AQUI O VALOR RETORNADO SERIA ['ricardo', 3.9, True]

UTILIZAMOS O MÉTODO INSERT PARA INSERIR UM NOVO ITEM EM UM LUGAR ESPECIFICO DA LISTA UTILIZANDO O INDICE.

lista.insert(0,'mike maluco') print(lista) # AQUI O VALOR RETORNADO SERIA ['mike maluco','ricardo', 3.9, True]

UTILIZAMOS O MÉTODO "CLEAR" PARA LIMPAR COMPLETAMENTA A LISTA.

lista.clear() print(lista)

PODEMOS JUNTAR LISTAS UTILIZANDO O SINAL DE + AQUI NOS CRIAMOS UMA LISTA NOVA COM OS VALORES JUNTOS.

lista_1 = [1,2,3] lista_2 = [4,5,6] lista_3 = lista_1 + lista_ print(lista_3) # O VALOR RETORNADO SERIA [1,2,3,4,5,6]

OUTRA MANEIRA DE JUNTAR LISTAS É UTILIZANDO O MÉTODO "EXTEND" A DIFERENÇA SERIA QUE UTILIZANDO O "EXTEND" VOCÊ NÃO CRIA

UMA NOVA LISTA. MAS SIM ALTERA A LISTA ORIGINAL.

lista_1.extend(lista_2) print(lista_1) # O VALOR RETORNADO SERIA [1,2,3,4,5,6]

Type Convertion ou Conversão de Tipos é o ato de converter um tipo em outro. Em linguagens de programação de tipagem "Forte" a conversão de tipos não é feita automaticamente durante a execução do código como por exemplo (^) print( 1 + "1") ao digitar este código em um arquivo de uma linguagem de programação de tipagem forte como python por exemplo. seria retornado um erro! então é necessário fazer a conversão dos tipos.

Algumas dessas "funções" para se fazer a conversão de dados de tipos primitivos são:

Tipagem estática, Tipagem dinâmica, Tipagem forte e Tipagem fraca.

Existem dois tipos principais de tipagem em linguagens de programação, que podem ser combinados de diferentes formas:

Variáveis

Variáveis são utilizadas para salvar informações na memoria do computador. Segundo a PEP8 devemos iniciar variáveis com letra minúscula e podemos utilizar números e underline " _ " após essa primeira letra. O Sina de igual " = " é utilizado para atribuir um valor a variáveis. nome_variavel = 1

Toda vez que chamamos uma variável estamos nos referindo ao valor que está armazenado a ela. então se definimos uma variável como nome_completo = "Igor Felix" e chamamos ela em uma função print por exemplo. print(nome_completo) o valor que iremos receber é o valor armazenado dentro da variável.

Dentro de variáveis é possível se transmitir qualquer tipo de dados que for desejado inclusive é possível passar expressões dentro de variáveis, como por exemplo: soma_2_2 = 2 + 2 e quando utilizarmos essa variável o valor retornado será o resultado da expressão. print(soma_2_2) == 4

Variáveis Constantes

Constantes são um tipo de variável em que o valor atribuído a ela nunca será alterado. em python não existe o conceito de variável constante porém normalmente os programadores atribuem os nomes de variáveis constantes sendo totalmente em maiúsculo.

Exemplo Utilizando Variáveis Constantes

Int = int("1") == 1 Float = float("1") == 1. String = string(1) = "1" Bool = (^) bool(' ') = true Vale a pena destacar que esses argumentos não são "funções" de verdade, mas sim classes. no futuro explicarei melhor o motivo disso.

Quanto ao momento da verificação: Tipagem Estática: O tipo das variáveis é definido em tempo de compilação e não pode mudar. Tipagem Dinâmica: O tipo das variáveis é definido em tempo de execução e pode mudar. Quanto à rigidez das regras de tipos: Tipagem Forte: Impede operações inválidas entre tipos, exigindo conversões explícitas. Tipagem Fraca: Permite conversões automáticas entre tipos, às vezes causando comportamentos inesperados.

AQUI VAMOS UTILIZAR VARIÁVEIS CONSTANTES PARA FAZER UM CÓDIGO PARA DESCOBRIR SE UM VEÍCULO FOI OU NÃO MULTADO AO PASSAR

EM UM RADAR.

VARIÁVEIS

vel_carro = 60 #Variável que contem a velocidade do veiculo. local_carro = 90 #Variável que contem o local onde o veiculo se encontra.

RADAR_1 = 61 #Variável constante que armazena a velocidade maxima do radar. LOCAL_RADAR_1 = 100 #Variável Constante que armazena o local onde o radar está RANGE_RADAR_1 = 1 # #Variável Constante que armazena o range de detecção do radar.

AQUI ARMAZENAMOS SE A VELOCIDADE DO VEÍCULO É MAIOR QUE O LIMITE DO RADAR.

velocidade_carro_passou_radar = vel_carro > RADAR_

AQUI ARMAZENAMOS SE O CARRO PASSOU NO LOCAL DO RADAR.

carro_pass_radar = local_carro >= (LOCAL_RADAR_1 - RANGE_RADAR_1) and local_carro <= (LOCAL_RADAR_1 + RANGE_RADAR_1)

É importante afirmar que em casos que existam 2 ou mais argumentos que estão na mesma ordem de procedência eles serão executados da esquerda para a direita. e a ordem de execução dos parênteses é sempre do interno para o externo.

Operações Condicionais

Os Operadores Condicionais são tipos de operadores que questionam ou checam informações dentro do nosso código como: variáveis, inputs, resultados de cálculos. com eles nós podemos mudar o fluxo de execução do nosso código, fazendo assim o interpretador ler certas linhas e pular outras caso necessário.

É importante destacar alguns pontos sobre os operadores if, elif e else:

  1. multiplicação( * ), divisão( / ), modulo( % ) = print( 2 * 2) | print( 2 / 2) | print( 2 % 2)
  2. adição(+) e subtração(-) = print( 1 + 1) | print(1 - 1) Exemplo

conta = (1 + 1) ** (5 + 5) print(conta)

resultado = 1024

IF() = O if é, basicamente, uma estrutura condicional que faz uma pergunta ou verifica uma condição no código, retornando diferentes resultados com base na resposta. Por padrão, todo if é acompanhado de uma condição ou questionamento, mas a forma como isso é implementado varia entre linguagens de programação.

No Python, para declarar um if , é necessário definir a condição a ser avaliada. O que diferencia o Python de outras linguagens é a maneira de organizar o que pertence a cada bloco de código. No Python, utilizamos a identação (tabulação ou espaços) para estruturar o código, enquanto em outras linguagens, como C ou Java, o código que pertence ao bloco condicional geralmente é delimitado por chaves {}. Exemplo

entrada = input("deseja '1-entrar' ou '2-sair'?: ") if entrada == '1' print("Você Entrou!")

ELIF() = O elif , ou "else if", é usado para realizar verificações adicionais dentro de uma estrutura condicional. Basicamente, ele funciona como uma forma de dizer: "Se a verificação anterior não foi verdadeira (True), tente esta condição."

É importante destacar que um elif só pode existir se houver um if previamente declarado. Ele serve para adicionar condições alternativas sem a necessidade de encadear múltiplos if separados, tornando o código mais organizado e eficiente. Exemplo

entrada = input("deseja '1-entrar' ou '2-sair'?: ") if entrada == '1': print("Você Entrou!") elif entrada == '2': print("Você Saiu!")

ELSE() = O else é uma estrutura condicional utilizada como uma alternativa final, executada caso nenhuma das condições anteriores seja verdadeira. Ele funciona como o "desfecho" do bloco de código if , garantindo que alguma ação seja realizada mesmo quando todas as verificações anteriores falharem. Exemplo

entrada = input("deseja '1-entrar' ou '2-sair'?: ") if entrada == '1': print("Você Entrou!") elif entrada == '2': print("Você Saiu!") else: print("Você não digitou uma opção existente!")

  1. O if é o único desses três que pode ser utilizado de forma independente, já que tanto o elif quanto o else dependem dele para serem usados.
  2. O else sempre será a última alternativa dentro da estrutura condicional.

Operadores de Comparação

Utilizamos os operadores de comparação para comparar valores dentro do nosso código e retornar valores booleanos com base no resultado dessa comparação. Eles são extremamente importantes para definir se certas operações devem ser realizadas ou não no código. Aqui estão eles:

Operadores Lógicos

Os Operadores Lógicos são fundamentais para adicionar mais complexidade e controle às operações dentro dos blocos de código, permitindo combinar condições de forma eficiente. Eles possibilitam que diferentes expressões sejam avaliadas juntas, criando lógica mais avançada em programas. Com o uso desses operadores, é possível tomar decisões mais precisas e realizar comparações mais detalhadas, de acordo com o comportamento esperado. A seguir, estão os principais operadores lógicos utilizados em programação:

Exemplo AND

Exemplo OR

1 - Exemplo NOT

  1. É possível utilizar vários elif no código, mas isso não se aplica ao if ou ao else , pois, por definição, o if é a primeira condição e o else a última.

Maior(>) = 2 > 1 = True Maior ou Igual(>=) = 2 >= 2 = True Menor(<) = 2 < 3^ = True Menor ou Igual(<=) = (^) 3 <= 3 = True Igual( == ) = "A" == "A" = True Diferente(!=) = "A" != "B" = True

and( e ) = Quando utilizamos o operador lógico and , estamos incluindo múltiplas condições que precisam ser verificadas dentro do bloco de código. Isso significa que, ao usar o and , estamos verificando se todas as condições envolvidas são verdadeiras. Somente se todas as condições forem atendidas, a execução do código continuará. Em outras palavras, o and garante que todas as expressões sejam verdadeiras antes de prosseguir com a execução.

#CRIAR UM SISTEMA PARA VERIFICAR SE O EMAIL É IGUAL A "IGOR@EMAIL" E A SENHA É "1234"

email = input('digite seu email') senha = input('digite sua senha') if email == "Igor@email" and senha == "1234": print('você entrou') else: print('email ou senha incorretos')

or( ou ) = O operador lógico or^ avalia se pelo menos uma das condições verificadas é verdadeira. Se isso ocorrer, o código será executado normalmente. Caso nenhuma das condições seja verdadeira, o operador or^ continuará avaliando o restante das condições no código. Em resumo, a execução do código seguirá adiante se qualquer condição for verdadeira, caso contrário, ele pulará a execução e verificará as demais condições.

#CRIAR UM SISTEMA PARA RODAR O CÓDIGO INDEPENDENTE SE O VALOR DIGITADO SEJA MAIÚSCULO OU MINÚSCULO.

opcao_escolhida = input('digite "E" para entrar ou "S" para sair')

if opcao_escolhida == "E" or opcao_escolhida == "e": print('você entrou') elif opcao_escolhida == "S" or opcao_escolhida == "s": print('você saiu') else: print('digite uma opção existente')

not( não ) = O operador lógico not é utilizado para inverter o valor de uma expressão dentro do bloco de código. Quando usamos not True , o resultado será False , pois o not inverte o valor lógico de True para False. Da mesma forma, ao usar not False , o resultado será True , pois o not inverte o valor lógico de False para True. Em resumo, o operador not inverte o valor booleano da expressão que ele está aplicando.

Exemplo

Exemplo

Interpolação de Strings

Interpolação de strings é uma técnica utilizada na programação para inserir valores de variáveis dentro de uma string. Em algumas linguagens, como Python e C, pode-se usar diferentes formas de interpolação. Uma delas é a formatação de strings com o operador de porcentagem (%), onde se coloca um marcador de posição (%) e uma especificação de tipo de dado (como (^) %d para inteiros ou (^) %s para strings). Em seguida, colocamos as variáveis a serem inseridas na string, na ordem correspondente aos marcadores.

Porém, em linguagens mais recentes, como o Python moderno, a forma mais comum de interpolação é utilizando f-strings , que permitem inserir diretamente variáveis dentro das strings com a sintaxe (^) f"Texto {variável}".

Try & Except

O try e o except em Python desempenham funções semelhantes ao try e catch em outras linguagens de programação. Utilizamos o try para tentar executar um bloco de código, e se ocorrer alguma exceção (erro), o except é responsável por tratá-la, permitindo que o programa continue a execução de forma controlada.

A principal diferença é que, em Python, o try e except não são apenas "equivalentes" ao try e catch , mas sim a parte fundamental da estrutura de tratamento de exceções. Além disso, o except não "captura o erro" de maneira genérica, mas sim as exceções que ocorrem

O QUE SINALIZA QUE O BLOCO DE CÓDIGO IF FOI EXECUTADO. DEPOIS, VERIFICAMOS O VALOR DE VARIAVEL_PASSOU_IF PARA SABER SE A CONDIÇÃO FOI ATENDIDA. O USO DE UMA FLAG OCORRE QUANDO ALTERAMOS O VALOR DE UMA VARIÁVEL EM RESPOSTA A UMA CONDIÇÃO E, POSTERIORMENTE, VERIFICAMOS ESSE VALOR PARA DETERMINAR O QUE FAZER NO RESTANTE DO CÓDIGO.

None = None é um valor especial em Python que representa a ausência de um valor ou a inexistência de um objeto. Utilizamos None quando não queremos ou ainda não atribuiremos um valor a uma variável ou quando desejamos indicar que um objeto ou função não tem um valor definido.

variavel = none print(variavel) # AQUI O VALOR RETORNADO SERIA "NONE"

Is e Is not = is e is not são operadores usados para verificar se dois objetos são o mesmo, ou seja, se têm a mesma identidade na memória. Eles retornam valores opostos entre si: is retorna True se os objetos forem idênticos, enquanto is not retorna True se os objetos forem diferentes.

variavel = none print(variavel, variavel is None) # AQUI O VALOR RETORNADO SERIA "NONE TRUE" print(variavel, variavel is not None) # AQUI O VALOR RETORNADO SERIA "NONE FALSE"

nome = "josé" preco = 100

variavel = "olá %s! o preço do produto é R$%i" % (nome,preco) print(variavel)

#CASO O VALOR SEJA UM NÚMERO QUEBRADO, É POSSÍVEL ABREVIAR O VALOR UTILIZANDO UM PONTO E O NÚMERO DAS CASAS DECIMAIS ANTES DO TIPO DO VALOR.

nome2 = "joão" preco2 = 100.

variavel2 = "olá %s! o preço do produto é R$%.2f" % (nome2,preco2) print(variavel2)

TAMBÉM É POSSÍVEL CONVERTER VALORES EM HEXADECIMAL APENAS TROCANDO O TIPO DE DADOS PARA A LETRA X.

valor = 100

variavel3 = "O valor %i em hexadecimal é %x " % (valor,valor) print(variavel3)

durante a execução do bloco (^) try.

Exemplo Try & Except

Estruturas de Repetição

Existem diversas abordagens para implementar estruturas de repetição nas linguagens de programação. Essas estruturas são fundamentais para a execução de tarefas repetitivas de forma eficiente e flexível. Aqui estão algumas maneiras de se fazer:

Exemplo While & Break

AQUI VOU UTILIZAR O TRY E O EXCEPT PARA FAZER UM CÓDIGO PARA VERIFICAR SE UM VALOR DIGITADO PELO USUÁRIO É UM NÚMERO E

DOBRAR ESSE VALOR.

TAMBÉM VOU FAZER O MESMO CÓDIGO UTILIZANDO UM IF PARA DEMONSTRAR A DIFERENÇA ENTRE UTILIZAR O IF E UTILIZAR O TRY&EXCEPT.

numero_str = input('Digite um número para ser dobrado: ')

print('Utilizando o IF') if numero_str.isdigit(): numero_float = float(numero_str) print(f'O dobro de {numero_str} é {numero_float * 2}') else: print('isso não é um numero inteiro')

AQUI JÁ É POSSÍVEL PERCEBER A PRIMEIRA DIFERENÇA ENTRE O TRY&EXCEPT E O IF. AQUI O IF CHECA UMA CONDIÇÃO A SER RETORNADA

A UM VALOR VERDADEIRO, ENTÃO TEMOS QUE UTILIZAR UM MÉTODO PARA GARANTIR QUE ESTAMOS DIGITANDO UM VALOR NÚMERICO INTEIRO. CASO CONTRÁRIO, O CÓDIGO NÃO SERÁ EXECUTADO.

JÁ QUANDO UTILIZAMOS O TRY&EXCEPT ESTAMOS BASICAMENTE ARMAZENANDO QUANDO UM ERRO OCORRE E DANDO UMA RESPOSTA PARA ESSE

ERRO. ENTÃO O CÁLCULO IRÁ OCORRER MESMO COM NÚMEROS QUEBRADOS. PORÉM, SE O USUÁRIO DIGITAR ALGO QUE NÃO SEJA UM NÚMERO, PODEMOS DAR UMA RESPOSTA A ISSO. print('==' * 15)

print('Utilizando Try & Except') try: numero_float2 = float(numero_str) print(f'O dobro de {numero_str} é {numero_float2 * 2}') except: print('isso não é um numero!')

AQUI VEMOS QUE O CÓDIGO É EXECUTADO MESMO QUE OCORRA UM ERRO. PORQUE DIFERENTE DO IF, O TRY&EXCEPT DETECTOU UM ERRO NO

CÓDIGO E RAPIDAMENTE NOS DEU UMA RESPOSTA A ESSE ERRO.

É IMPORTANTE DIZER QUE UTILIZAR O TRY&EXCEPT DESTA MANEIRA NÃO É A FORMA MAIS ADEQUADA DE SE UTILIZAR. PORÉM AQUI ESTOU

FAZENDO DESTA FORMA PARA DEIXAR MAIS NÍTIDO A DIFERENÇA ENTRE UTILIZAR O TRY&EXCEPT E O IF.

while() & break() = Utilizamos o while() para criar um laço de repetição condicionado a uma expressão booleana. O bloco de código será executado enquanto a condição for verdadeira, e a repetição será interrompida assim que a condição deixar de ser atendida. Por outro lado, o comando break() é usado para interromper o laço de repetição de forma antecipada. Assim, a repetição pode ser encerrada tanto quando a condição definida não for mais verdadeira, quando o break() for executado, forçando a saída do laço antes que a condição seja reavaliada.

AQUI VAMOS FAZER UM LAÇO DE REPETIÇÃO COM A CONDIÇÃO SENDO QUE O NUMERO DE REPETIÇÕES TEM QUE SER ATÉ A VARIÁVEL CONTADOR

ATINGIR 10.

contador = 0

while contador <= 10: print(contador) contador = contador + 1 print('Acabou!')