- Anotações Python
- Sumário
- Anotações Gerais
- Tipos Primitivos
- Operações Aritméticas
- Ordem De Precedência
- Anotações Print
- Bibliotecas
- Manipulação De Texto
- Estrutura Condicional Simples E Composta
- Estrutura De Repetição Ou Laços Ou Iterações
- Coleções
- Cores No Terminal Python
- Conversão Base De Dados
- Funções
- Modularização
- Pacotes
- Tratamento De Erros E Exceções
- Manipulação De Arquivo Txt
Refinamento sucessivo : particionar um aplicação e realizar testes em quando desenvolve, para por exemplo evitar erros no começo meio, e corrigi los enquanto em fase de desenvolvimento.
Inverter string digitada com : var[::-1]
Flag - Ponto de parada
Consegue-se receber o mesmo valor para várias variáveis utilizando:
ex = ex1 = ex2 = ex3 = 0
reverse = True - torna algumas funções invertidas ex: L.sort()
função == Método
toda função abre e fecha parênteses após o nome ex: f()
- int - inteiro
- bool - booleano / true , false
- float - números com vírgula
- str - cadeia de texto
- Adição: +
- Subtração: -
- Multiplicação: *
- Divisão: /
- Potência: **
- Divisão: //
- Resto da divisão/Módulo : %
- Comparação: ==
- Recebe: =
- :()
- :**
- :*,/,//,%
- :+,-
dentro de um print com f string ou .format pode se utilizar :.3f
dentro das chaves para definir apenas 3 número após o ponto flutuante
end=’ ’
não quebra a linha
\n
- quebra a linha
3 aspas duplas para pegar mais de uma linha
f string - f‘teste : {variável}’
ceil(N)
: arredonda para cima
floor(N)
: arredonda para baixo
trunc(N)
: reduz casas decimais sem arredondar
pow(N)
: potência
sqrt(N)
: raiz quadrada
factorial(N
) : fatorial
random()
: gera número aleatório entre 0 e 1
randint(numero inicial,Numero Final)
: gera um número aleatório inteiro em que é possível escolher o range
shuffle(L)
: Embaralha uma lista
sleep(segundos)
: faz o processo aguardar a quantidade de tempo definido antes de continuar a execução
date.today().year
: ano atual
itemgetter
- usado para buscar itens dentro de dicionários
urllib.request.urlopen( Url de algum site )
- tenta acessar algum site
variavel_com_url_site.getcode()
- Retorna um código para a tentativa de acesso sendo 200 bem sucedido.
frase[9:21]
- Retorna o valor de frase começando na posição 9 e indo até a 20 (o python desconsidera a última)
len(f)
- quantidade de caracteres em uma string ou lista
(T).count()
- conta a quantidade de um caracter dentro de uma string / list
(T).find()
- mostra a posição de um caracter dentro de uma string / lista. se não existir ele retorna -1
(T).index(Valor procurado, Início)
- mostra a posição do valor procurado dentro de uma variável composta
in
- retorna valor booleano
del(Variável)
replace()
- Substitui uma string/valor de lista por outra string digitada
upper()
- Deixa uma string em maiúsculo
lower()
- Deixa uma string em minúsculas
capitalize()
- Deixa uma string em minúscula e coloca a primeira letra em maiúscula
title()
- Deixa cada palavra em uma string em maiúscula
strip()
- Remove os espaços inúteis antes do começo da string e no final
rstrip()
- Remove os espaços da direita
lstrip()
- Remove os espaços da esquerda
string.center(Número de caracteres)
- Centraliza o texto no Números de caracteres definidos
split()
- Divide uma string em uma lista
'separador'join(frase)
- junta um string // exemplo ‘-’.join(frase) junta a string e separa por ‘-’
zfill(número)
- adiciona uma quantidade de zeros a uma string
roda o programa de forma linear de cima para baixo executando todos os comandos
Escreva tudo em uma linha exemplo: print(‘1’ if var <=3 else ‘2’)
Ele executa apenas um bloco condicional
executa mais de um bloco condicional ex : else
Condições dentro de condições
if
- se
Elif
- Precisa sempre de um if
Else
- So pode ser utilizado uma vez dentro da Ninhada com if ou elif
for x in range(Número Inicial, Número Final(Sendo o Resultado NF-1)
, qual é a iteração( Exemplo Somar(1) ou subtrair(-1)) )
for x enumerated( Variável Composta )
retorna o valor e o índice.
while not
(Valor Booleano):
while true
: loop infinito
break
- interrompe o laço de repetição
continue
- continua o laço e caso o programa rode alguma parte que não contenha o continue sendo que ele existe dentro do mesmo laço ele para
Você pode interpolar as coleções, por exemplo: Dicionários Dentro de listas
Caracter - ()
Tuplas são Imutaveis
sorted(T
) - ordena a tupla porém não armazena o valor, para guardar usar variável
Caracter - []
sum(L)
- soma todos os valores de uma lista
L.append()
- adiciona um valor na lista
L[índice]
- mostra o item que está na posição indicada
L.insert(Posição,Valor)
- adiciona um valor em uma posição selecionada
L.remove()
- remove um valor da lista
max(L)
- Mostra maior valor da lista
min(L)
- Mostra o menor valor da lista
(L).sort
- Ordena a lista
del L[Índice]
- Deletar um item de uma lista pelo Índice escolhido
L.pop(Índice)
- Deletar um item de uma lista pelo Índice escolhido ou se não for entregue argumento ele remove o último valor.
L.remova(valor)
- Remova o item procurado pelo valor(Conteúdo) definido
L1 = L2
- o sinal ‘=’ faz um ligação entre as listas, onde a mudança de um afeta o outro
L1 = L2[:]
- copia a lista, não tendo ligação
L1.append(L2[:])
- Copia a list L2 para Dentro da lista L1
L1 = [[‘Valor1’,’Valor2’],[‘Valor1’,’Valor2’]]
- Declara uma lista dentro de lista
print(L[0][0])
- mostra o índice 0 dentro da lista [0]
L.clear()
- Limpa uma lista
L.choice
- Escolhe um item aleatoriamente dentro da lista
Caracter - {}
Principal diferença entre a lista : Tem índices Literais (Letras/Palavras)
D[‘Índice Literal’]
= ‘Valor’ - Adiciona um valor a variável
del D[‘Índice Literal’]
- Deleta o valor que está no índice digitado.
D.values()
- Retorna os Valores
D.keys()
- Retorna os Índices Literais
D.items()
- Retorna tanto os Índices(Keys), como os Valores(values)
D.copy()
- Copia os valores de um dicionário sem fazer relação, (para utilização em laços e ETC)
D1 = sorted(D2.items(), key=itemgetter(índice do dicionário sendo 0 as keys, e 1 os valores) )
- Ordena em ordem
crescente um dicionário com base nos valores
\033[Style;Text;Back;m
\033[0;33;44m
0 - none
1 - bold
4 - underline / sublinhado
7 - negativo
30 - branco
31 - vermelho
32 - verde
33 - amarelo
34 - azul
35 - violeta
36 - ciano
37 - cinza
40 - branco
41 - vermelho
42 - verde
43 - amarelo
44 - azul
45 - violeta
46 - ciano
47 - cinza
bin()
- converter de decimal para binário
oct()
- converter de decimal para Octal
hex()
- converter de decimal para hexadecimal
São rotinas, que podem ou não retornar valores e podem ou não usar parâmetros
def funcao():
Rotina/algoritmo
def funcao(parâmetro):
print(‘-’*10)
print(parâmetro)
print(‘-’*10)
def contador(*núm)
- recebe vários parâmetros
help(função interna)
- Retorna uma ajuda sobre uma função interna
String de documentação, ou seja Help para uma função criada por você
Uma linha após definir a função criar 3 aspas duplas e fechar o que estiver dentro é o ”manual de como usar sua função”
def funcao(a,b,c):
“””
-> aqui vai uma descrição direta
:param a: Descrição do parâmetro a
:param b: Descrição do parâmetro b
:param c: Descrição do parâmetro c
:return: se a função tem ou não retorno se tiver qual o retorno
“””
Aqui começa o código da função
cria Parâmetros que podem ou não serem inseridos sem influenciar na funcionalidade do programa
colocar um valor para uma variável caso ela não for inserida
def funcao(a,b,c=0(caso c não receba nenhum valor ele irá receber 0)):
s = a + b + c
print(s)
local onde a variável vai existir e onde ela não vai mais existir
existe apenas em uma parte do programa
existe em todo lugar do programa
No python quando definir uma variável global e uma local com o mesmo nome, ele irá criar 2 variáveis diferentes sem ligação, para criar ligação você deverá colocar o comando global
def funcao():
global (nome da variável)
aqui começa o código da função
colocar o comando return na última linha da função juntamente com uma variável com o valor que deseja retornar
def funcao(a,b,c):
s = a+b+c
return s
a separação do programa principal das funções
- Dividir um programa Grande
- Aumentar a legibilidade
- Facilitar a manutenção
Criar um arquivo .py na mesma pasta que o programa principal com o nome desejado
dentro colocar todas as funções que precisa, após isso no programa principal utilizar import nome_do_arquivo
, ou from nome_do_arquivo import nome_da_função
- Organização do código
- Facilidade na manutenção
- Ocultação de código detalhado
- Reutilização em outros projetos
Uma pasta com vários Módulos, podendo separar os módulos por assunto
Apenas criar um pasta, dentro do projeto ele já reconhece que pode potencialmente ser um pacote
Sempre dentro de um pacote deve-se ter um arquivo chamado: __init__.py
onde irá ficar as funções
Quando os projetos começam a ficar muito grandes
Erros de digitação, o comando digitado não existe
são erros que acontecem por atribuição errada, receber número diferente do esperado e etc
verificar se algo é possível de executar sem resultar em erro, caso tenha problema realizar outro comando
colocar try:
quebrar linha e escrever o comando que ele deve tentar, depois de escrever o bloco de comando quebra linha ‘except:
’ quebra linha, e escrever o que fazer caso tenha dado erro, e caso necessário else:
e colocar o que deu certo. finally:
, escreve de qualquer maneira com ou sem erro
try:
Bloco de comando
except: / variante / except Exception as erro:
caso tenha dado erro / variante / print(erro.__class__ ) ele mostra qual erro foi o erro
(opcional) else:
caso tenha dado certo
(opcional) finally:
executa de qualquer maneira dando certo ou errado
você pode criar inúmeros except e especificar para cada um deles qual o erro e como tratar cada um:
except TypeError:
Tratamento para o erro TypeError.
except ValueError:
Tratamento para o erro ValueError
variável = open(‘Caminho que deseja criar/Ler’,Parâmetro)
‘r’
- Transforma em uma variável pronta para leitura
‘a’
- Transforma em uma variável pronta para adicionar texto
‘w’
- Transforma em um variável pronta para substituir tudo e colocar um novo texto
após cada letra pode se colocar o +
para se caso o arquivo não exista ele cria, exemplo: a+
encoding=’utf-8’
- Parâmetro Adicional para poder fazer qualquer Edição/Leitura e Salvamento de arquivos com acentos
variável_pronta_para_[adicionar/substituir]_texto.write(‘texto desejado\n’)
(o ‘\n’ é opcional pois ele quebra linha, porém é extremamente recomendado pois caso adicione mais de um texto ele não quebra automaticamente a linha)
print(variável_pronta_para_ler_texto.read())
- lê o valor do arquivo inclusive com quebra linhas