Baixe o app para aproveitar ainda mais
Prévia do material em texto
PYTHON – MUNDO 1 Aula 06 – Tipos Primtivos : INT, FLOT, BOOL e STR N1, N2 e S são variáveis = leia-se recebe input é o comando para inserir a informação pelo teclado ‘ aspas simples para colocar uma informação na tela do dispositivo ‘A soma vale’ é uma string O sinal de + é uma concatenação( Concatenação é juntar uma string a outra), por este motivo o código não estava somando mas sim colocando um número ao lado do outro, por exemplo se a variável N1 fosse 2 e a variável N2 fosse 3, a variável S seria 23 e não 5 que seria o correto. Quando eu insiro um número o Python não entende que ele é um número mas sim uma STRING, por este motivo eu preciso dizer ao PYTHON que aquela STR se trata de um número e dizer qual tipo de número é, ou seja, se trata de um número INTEIRO =INT, REAL=FLOAT, BOLEANOS=TRUE ou FALSE, STR=PALAVRAS. Há uma nova forma de utilização da função INPUT: Leia se Mostre na tela a mensagem ‘A soma vale’ e entre as chaves vão aparecer o resultado da variável que eu escolher, no caso a variável S.( O formar permite mais configurações e é a sintaxe nova do Python 3. Para saber o tipo do caracter se é uma STR, INT, FLOAT ou BOOL usa-se o comando TYPE: Já na tela abaixo eu especifiquei o caracter como sendo do tipo INTEIRO (Int): Na tela abaixo podemos ver o código para a correta soma dos números: Fazendo de forma que o resultado apareça diferente: Outra forma é possível e recomendada por utilizar menos , e ‘: Tela inserindo e exibindo cada um dos tipos primitivos: No primitivo bool (boleano) ele entendeu como True ou verdadeiro porque foi inserido um valor, no caso o número 5, contudo se não tivesse sido inserido nenhum valor, o resultado seria False, ou seja, falso. Há a função (is) que verifica se o tipo do caracter inserido,por exemplo se é um numero ou uma letra conforme tela abaixo: Funções isnumeric, isalpha, isalnum: Verificam se o caracter é número, letra ou alfa numérico. São várias as funções IS e é importante observar que não se pode inserir espaço antes do caracter quano for digitar a informação, porque espaço também conta na função IS.IS são testes de tipos. Na tela abaixo vamos dissecar uma variável, verificando o tipo primitivo, se é numérico, alfabético, entre outras verificações: Os cálculos aritméticos podem ser: Ordem de Precedência, ou seja, o que se resolver primeiro numa equação: Exemplos de operações: Nas telas abaixo há exemplos de pequenas mudanças nos códigos, que irão alterar a quantidade de casas decimais que serão exibidas {:.3f}. A outra mudança é para que embora contenham 02 prints, ambos serão exibidos numa única linha end=’ ‘.Outra mudança é para que mesmo que haja apenas um print, a resposta será exibida em mais de uma linha \n Exercícios com funções aritméticas ( Tratando dados e fazendo contas): Outras formas de resolução dos mesmos exercícios: Sempre observar a formatação da informação que será inserida, por ex. numa equação que envola dinheiro ou notas de avaliações, a configuração deve ser float, isso porque são números flutuantes (R$105.30 ou nota 9.5) observando que não se utiliza vírgula mas sim ponto. Módulos em Python Os módulos dão novas capacidades ao Python, cada módulo possui várias funções e é preciso ponderar se é necessário fazer uso do pacote (módulo) completo ou somente uma ou algumas funções do módulo, isso porque quanto mais funções ou módulos forem baixados, mais pesado fica o programa e portanto fará mais uso de memória. Importando o módulo ou biblioteca math completo: Importando somente as funções sqrt e floor da biblioteca math: No site python.org , guia DOC no link Library Reference é possível encontrar mais informações a respeito de cada função do Python, contudo antes é necessário selecionar a versão correta do Python. Por exemplo importando a função random ao invés de pedir para o usuário digitar um número, pedir ao computador para mostrar um número inteiro entre 0 e 10 de forma aleatória. O código ficaria assim: Ao digitar import e pressionar as teclas CTRL+SPACE, serão exibidas todas as bibliotecas disponíveis para importação, desde as built in (já vem no Python) quantos as criadas fora do Python. Novamente no site python.org mas desta vez na guia Pypi (Python Package index ou índice de pacotes extras) possui mais pacotes extras e também é possível criar um pacote e disponibilizar na comunidade. Por exemplo posso fazer uma busca por pacotes emoji, contudo é preciso importar esta biblioteca e isso é feito pelo Pycharm ao digitar import emoji, clico na palavra emoji então aparecerá uma lâmpada vermelha, clico na lâmpada e em install package emoji, após a instalação já será possível utilizar o pacote: Trigonometria para resoluções de exercícios: Resolução de Exercícios: Cadeia de Caracteres De 0 à 20 dá um total de 21 caracteres Fatiamento (Fatiamento de string ou caracter) – frase[9] (tudo que está entre colchetes é considerado uma lista). No comando abaixo, observe que ele exclui o último número, no caso o 13 que corresponde à letra o, de modo que será selecionado ou fatiado somente ‘Vide’. A contagem sempre inicia no número que foi indicado no comando mas sempre termina no número anterior ao dado no comando. Fatiamente de String ou Caracter Análise : Analisar uma string é saber informações dela, como tamanho, letra que inicia, letra que termina, primeira palavra inteira, última palavra, etc. Obs. O Python diferencia maiúsculas de minúsculas Obs. No exemplo abaixo está sendo feito uma análise com fatiamento, observar que o último valor nunca é contado, ou seja, embora o comando seja até o 13, a contagem é feita até o 12, sempre exclui o último valor como explicado anteriormente. Obs. No exemplo abaixo o comando é para procurar a string solicitada e encontrando o Python deve retornar o valor onde se encontra o início da string, ou seja, no exemplo abaixo ‘deo’ inicia no valor 11. Obs. No exemplo abaixo, o comando foi para procurar a string ‘Android’ como não há essa string na frase, o Python retornará a informação -1 que significa que não existe a string solicitada na frase. Obs. No exemplo abaixo eu pergunto ao Python se há a string ‘Curso’ na frase, se houver ele retorna True se não False. Transformação: Através de métodos é possível substituir na Cadeia de Caracter. Pelo comando abaixo a string ‘Python’ seria substituída por ‘Android’ O comando abaixo transformará todos os caracteres em maiúsculo. O comando abaixo transforma todos os caracteres em minúsculo. O comando abaixo vai transformar todos os caracteres em minúsculo e somente o primeiro caracter será transformado para maiúsculo. O comando abaixo é parecido com o anterior mas ele mudará para minúsculo todas os caracteres exceto o primeiro de cada palavra, ou seja, ele identifica palavra por palavra da string e põe em maiúsculo somente o primeiro caracter. O comando abaixo retira os espaços vazios inúteis do início e fim da frase, no exemplo abaixo o caracter A passaria a ter o valor 0, isso pode acontecer quando alguém ao preencher um formulário aperta a tecla espaço antes e após terminar de inserir a informação. O comando abaixo é similar ao anterior, diferenciando apenas que por ter no comando a letra R de right de direita o que fará remover somente os espaços vazios da direita e se tiver o L e left, removerá somente os espaços à esquerda. Divisão : Os comandos de divisão dividem a cadeia de caracter que era única em várias cadeias, de modo a criar uma lista, inclusive a reiniciar as posições de cada caracter das novas cadeias, comono exemplo abaixo. Junção: Neste comando de junção o efeito é o contrário do comando acima, desta vez o objetivo é juntar as várias palavras de uma cadeia de caracter como no exemplo abaixo onde se utilizou um traço (-) entrea as palavras. Para deixar um espaço em branco entre as palavras ao invés de traço, basta colocar entre os parênteses um espaço vazio. Utilizando as 3 aspas para textos longos. Para não precisar utilizar um print para cada linha de um texto longo, posso utilizar 3 aspas ‘’’ no inicio e no fim do texto conforme exemplo abaixo: Testes dos comandos de manipulação de textos O comando abaixo retornará a letra ‘e’ da palavra ‘Vídeo’, pois a frase foi dividida (Split) e o número 2 do primeiro colchetes representa a palavra ‘Vídeo’ e o número 3 do segundo colchetes representa a letra que está na terceira posição da palavra ‘Vídeo’ Estrutura Condicional - Condições Simples e Compostas Numa condição, ou o bloco verdadeiro é executado ou o bloco falso (True/False). Para estruturas simples usa-se somente o IF, já para estruturas compostas ELSE O mesmo programa feitocom uma Condição Simplificada, conforme abaixo: Abaixo temos 1 exemplo de Estrutura Simples Abaixo temos 1 exemplo de Estrutura Composta Condição Composta Condição Simples Resolução de exercícios: Os mesmos exercícios resolvidos pelo Guanabara: O mesmo exercício mas de forma simplificada ( If inline ou Operador Ternário) Outra forma de fazer o mesmo exercício mas desta vez analisando também o ano atual através do caracter ‘0’ Cores no Terminal PYTHON – MUNDO 2 Condições Aninhadas Condição Padrão (Simplificada) : Numa estrutura condicional sempre haverá IF, pode ou não existir, ELIF e ELSE pode ser utilizados ELIF quantas vezes forem necessárias, já ELSE somente uma ou nenhuma. Estrutura Condicional Composta: Estrutura Condicional Aninhada: EXERCÍCIOS 36 ao 42 – Condições Aninhadas No código abaixo as funções bin, oct, e hex são utilizadas dentro do comando .format e para excluir os 2 primeiros caracteres de cada função, foi feito o fatiamento da string que foi visto no capítulo de Manipulação de Textos, a exclusão foi feita pelo comando [2:] e no início do código para a linha de comando não ficar muito extensa, foi utilizado 3 aspas no inicio e 3 aspas ao final do comando. No código abaixo foi utilizado a função DATE da biblioteca DATETIME com a finalidade de se verificar e fazer os cálculos sempre do ano atual Observar que no exemplo abaixo quando se trata de verificar a igualdade == a linha da sintaxe é mais simples, porém quando se trata de verificar se os valores são diferentes != a sintaxe obrigatoriamente deve ser detalhada, ou seja, deve constar todos os valores. Outra observação é o IF dentro de outro IF e ao final do resultado o comando end=’ ‘ para que os demais possíveis resultados apareçam ao final da linha e não abaixo. Neste código foi utilizado a função ITENS para que embora o randint seja numero aparecerá a palavra referente ao número, no caso Pedra, Papel e Tesoura. ESTRUTURA de REPETIÇÃO FOR É plenamente possível colocar IF dentro de FOR, bem como também é possível colocar um FOR dentro do IF, isso é aninhar, são junções de estruturas, mas tem que ficar atento quanto a indentação Formas de aplicação FOR Resolução de Exercícios Execução mais lenta Execução mais rápida. ESTRUTURA DE REPETIÇÃO WHILE EXERCíCIOS WHILE COMANDO BREAK Obs: F STRING Todo o cuidado com a indentação, uma endentação fora do lugar prejudica ou impede todo o funcionamento do código, é preciso saber onde começa e onde termina o processo para saber a correta endentação. PYTHON – MUNDO 3 – 06.12.2021 Tupla é uma variável composta, as variáveis compostas são (tuplas, listas e didionários) ou seja, aceita mais que 1 item ou valor, na verdade aceita quantos itens forem necessários, contudo estes itens são imutáveis (Tuplas são imutáveis quando estão em execução, mas na edição do código é possível modificar uma tupla). Os itens ou valores das variáveis compostas recebem índices: Tuplas, Listas e Dicionários. No Python atual é possível criar uma Tupla sem utilizar Parênteses. Como acima. O comando INDEX mostra em qual posição determinado item ou valor está dentro da variável, como no exemplo acima o valor 3 está na posição 2. No exemplo acima há 2 valores 4, o Index vai indicar o 1º valor, exceto se você especificar na linha de comando conforme exemplos abaixo: Para apagar uma Tupla ou qualquer outra variável, utilizamos o comando DEL A mensagem de erro é normal pois o comando DEL deleta de vez a variável, inclusive a Tupla. EXERCÍCIOS Observar que neste código há vários detalhes de formatação, como a utilização correta das F STRINGS, a adição de +1 na posição da Chapecoense na tabela, haja vista, o Corinthians que está na primeira posição ser considerado como posição 0 (zero) no fatiamento de string/ len Importante observar que na mesma linha da sintaxe se for necessário utilizar aspas em mais de um comando, tem que revezar entre aspas simples e duplas. Importante também observar o raciocínio utilizado, sendo as posições pares para os itens e as posições ímpares para os valores. Observar a lógica para chegar ao resultado foram utilizados 2 FOR e observar os usos de \n e end=’’, bem como a indentação LISTAS Listas são variáveis compostas, que utilizam colchetes, assim como as Tuplas utilizam parênteses, e ao contrário das Tuplas, as listas são mutáveis. O comando append adiciona algo à variável composta Lista, este novo item entrará no final da lista. Já apara inserir um novo item escolhendo a posição em que deseja a inserção, utiliza-se o comando INSERT, o próprio Python faz a atualização dos demais itens da lista. Para excluir um item da lista podemos utilizar os comandos DEL ou POP. O POP é mais utilizado para eliminar o último elemento da lista. Há também o comando REMOVE, que em sua sintaxe não faz uso da posição (key ou chave) mas sim do próprio valor para sua remoção. Antes do comando Após o comando Este comando eliminou o último item que era a pizza, como dito anteriormente o comando POP elimina o último item desde que não seja especificado nada entre os (). Se tentarmos eliminar um item que não existe o código causará um erro no programa, por isso é necessário verificar previamente a existência do item que desejamosexcluir, para isso podemos utilizar a função condicional IF IN como no exemplo abaixo: Também podemos criar Listas com os comando LIST/RANGE conforme abaixo: Desse modo a lista é criada com os itens de forma crescente. Para criarmos uma lista com itens desorganizados, temos que criar pelos métodos anteriores. Através do comando SORT podemos organizar os valore que criamos de forma desorganizada. Já pelo comando SORT REVERSE podemos inverter a ordem: Para sabermos quantos itens temos na nossa lista, podemos utilizar o comando LEN: O c equivale a posição (key) e o v equivale ao Item. Observe que não foi feito uma cópia, mas sim uma ligação entre as listas de modo que ao mexer em uma lista mexerá também na outra. Para fazer uma cópia da lista o procedimento é outro, conforme abaixo: Acima foi realizada uma cópia dos valores da lista A, de modo que as listas não tenham ligação, sendo assim, ao alterar a lista B a lista permanecerá intacta. Observar que não consegui fazer o código por completo, faltou colocar a posição do maior e menor e também não cheguei ao maior e menor valor pela condição IF, mas sim pelas funções MAX() e MIN(), é imperativo aprender a fazer pela condicional IF e também observar a configuração dos PRINTS . No meu código não consegui fazer com que negasse a inclusão de um número repetido, o que foi feito no código do Guanabara por meio da função IF NOT. Não consegui fazer este programa e copiei este código do stackoverflow, observar e aprender o raciocínio para trabalhar com LEN, INSERT, ENUMERATE, CHAVE e etc. Praticar mais com exemplos próprios, códigos próprios. Observar que a contagem dos itens foi feita por meio do LEN e não de um contador como eu fiz Não consegui resolver este exercício, não alcancei o raciocínio, basicamente trata-se de incluir e retirar (ou substituir) os parênteses e ao final verificar se na variável não houver nenhum parênteses é porque a operação está ok, se sobrar algum parênteses é porque está errada. LISTAS -2 Aprendemos na Lista parte 1 conforme a imagem acima, quanto então, adicionamos novos dados ou itens a uma lista já existente e também conseguimos printar um determinado valor ou item de uma lista. Na Lista parte 02 vamos aprender a incluir uma lista dentro de outra (listas compostas), ou várias listas dentro de outra, conforme imagem abaixo: Ligação Cópia [:] Se for feito uma ligação somente, o que for alterado em uma lista será alterado também na outra lista, contudo se for feito uma cópia da lista por meio de [:] as alterações serão individuais. Não consegui fazer todo o programa e o pouco que fiz foi copiado da resposta do exercício. Os programas estão ficando maiores e exigindo mais raciocínio.
Compartilhar