Você está aqui: Python ::: Dicas & Truques ::: Lista (List) |
Como adicionar uma lista Python ao final de outra usando o método extend()Quantidade de visualizações: 7658 vezes |
A função extend() do objeto List da linguagem Python nos permite adicionar todos os elementos de uma determinada lista ao final de outra lista. É claro que qualquer objeto que fornece uma forma de iteração pode ser passado ao método, incluindo uma List, um Set, uma Tuple, etc. Veja um trecho de código no qual criamos duas listas de inteiros e adicionamos todos os elementos da segunda lista ao final da primeira: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- """ Este exemplo mostra como adicionar os elementos de uma lista ao final de outra """ def main(): # cria uma lista de inteiros valores1 = [2, 5, 12, 2, 3] print(valores1) # cria uma lista de pontos-flutuantes valores2 = [4.3, 6.43, 8.1] print(valores2) # insere a segunda lista no final da primeira valores1.extend(valores2) # exibe o resultado final print(valores1) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: [2, 5, 12, 2, 3] [4.3, 6.43, 8.1] [2, 5, 12, 2, 3, 4.3, 6.43, 8.1] |
![]() |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Matemática e Estatística |
Python para estatística - Como calcular a mediana de um conjunto de valores usando o método median() da biblioteca NumPy da linguagem PythonQuantidade de visualizações: 16485 vezes |
A mediana (Md) representa o valor central de um conjunto de dados. Para encontrá-la, é necessário colocar os valores em ordem crescente ou decrescente. Quando o número elementos de um conjunto é par, a mediana é encontrada pela média dos dois valores centrais. Assim, esses valores são somados e divididos por dois. Veja a seguinte figura: ![]() A biblioteca NumPy do Python nos oferece o método median(), que recebe um vetor de valores númericos (inteiro ou decimais) e retorna a mediana deles. Veja um exemplo com os primeiros valores da figura (um conjnto ímpar): ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a biblioteca NumPy import numpy def main(): # valores a serem observados valores = [2, 2, 3, 7, 8, 9, 9] # vamos obter a mediana mediana = numpy.median(valores) # vamos mostrar o resultado print("A mediana dos valores é:", mediana) if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: A mediana dos valores é: 7.0 Veja agora o exemplo usando o segundo grupo de valores da imagem (conjunto par): ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a biblioteca NumPy import numpy def main(): # valores a serem observados valores = [1, 4, 4, 5, 6, 7, 7, 7] # vamos obter a mediana mediana = numpy.median(valores) # vamos mostrar o resultado print("A mediana dos valores é:", mediana) if __name__== "__main__": main() O resultado da execução desse código será: A mediana dos valores é: 5.5 É importante observar que o método median() da NumPy não exige que os valores estejam ordenados. A própria função se encarrega dessa tarefa. |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Matemática e Estatística |
Tutorial Machine Learning com Python - Como usar o método mean() da biblioteca NumPy para calcular média (ou média aritmética simples)Quantidade de visualizações: 3859 vezes |
Média aritmética (ou simplesmente média simples) é a soma de vários valores e dividido pelo total deles. Ou seja, o resultado dessa divisão equivale a um valor médio entre todos os valores. Veja a seguinte figura: ![]() Veja que temos 4 valores: 4, 9, 12 e 25. Assim, para obter a média aritmética desses valores, só precisamos somá-los e depois dividir pela quantidade, ou seja, por 4. A média resultante será 12,5. A biblioteca NumPy do Python nos oferece o método mean(), muito usado em Data Science e Machine Learning, que recebe um vetor de valores númericos (inteiro ou decimais) e retorna a média deles. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a biblioteca NumPy import numpy def main(): # valores a serem observados valores = [4, 9, 12, 25] # vamos obter a média aritmética simples media = numpy.mean(valores) # vamos mostrar o resultado print("A média dos valores é:", media) if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: A média dos valores é: 12.5 |
Python ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do mês em Python como um decimal no intervalo 01-31 usando strftime("%d")Quantidade de visualizações: 8090 vezes |
Como retornar o dia do mês em Python como um decimal no intervalo 01-31 usando strftime("%d") Este exemplo mostra como usar a função strftime() e o sinalizador ("%d") para retornar o dia do mês a partir de um datetime. Observe que o dia do mês será retornado como um decimal no intervalo 01-31. ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- from datetime import datetime def main(): # Obtém um datetime da data e hora atual hoje = datetime.today() # Exibe o dia do mês como um decimal print(hoje.strftime("O dia do mês é: %d")) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O dia do mês é: 26 |
Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: Input e Output (Entrada e Saída) |
Como usar o método read_csv() do Pandas da linguagem Python para carregar um dataset e retorná-lo como um DataFrameQuantidade de visualizações: 5031 vezes |
Quando estamos desenvolvendo soluções em Data Science ou Machine Learning, é comum precisarmos carregar dados contidos em arquivos .csv (nos quais os registros são separados por vírgulas ou ponto-e-vírgula). Para isso podemos usar o método read_csv() da biblioteca Pandas do Python. Veja um exemplo no qual usamos o método read_csv() para carregar um dataset e depois exibir o DataFrame resultante. Para isso usaremos uma amostra de dados de empréstimos aprovados ou recusados. O arquivo .csv pode ser baixado aqui. Eis o código: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a biblioteca Pandas import pandas as pd def main(): # vamos carregar os dados do arquivo .csv dados = pd.read_csv("C:\\estudos_python\\emprestimos.csv", delimiter=";") # vamos mostrar o DataFrame resultante print(dados) if __name__== "__main__": main() Quando executarmos este código nós teremos um resultado parecido com: id nome idade sexo renda valor parc pont ap 0 1 MIGUEL728 24 M 1800 12500 30 34 S 1 2 RAUL46 61 M 2300 10000 24 59 S 2 3 JONAS264 28 M 800 12500 36 59 N 3 4 LETICIA135 71 F 1800 10000 36 13 N 4 5 CARLOS931 60 F 4000 2000 6 10 N .. ... ... ... ... ... ... ... ... .. 9 96 ANGELA391 91 F 4000 12500 12 33 N 96 97 PEDRO764 50 M 10200 2500 12 1 N 97 98 ADRIANA175 41 F 4000 2000 36 77 S 98 99 ROSA666 42 F 1800 20000 24 74 N 99 100 SARA653 36 F 970 11000 12 42 N [100 rows x 9 columns] Note que aqui nós temos uma amostra de 100 registros e cada registro possui 9 colunas. Se você quiser ver todos os 100 registros, troque a linha: print(dados) por print(dados.to_string()) Para finalizar, note que forneci ";" como delimitador para o método read_csv(). |
Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em PythonQuantidade de visualizações: 2683 vezes |
Todos estamos acostumados com o Teorema de Pitágoras, que diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos". Baseado nessa informação, fica fácil retornar a medida do cateto oposto quando temos as medidas da hipotenusa e do cateto adjascente. Isso, claro, via programação em linguagem Python. Comece observando a imagem a seguir: ![]() Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. A medida da hipotenusa é, sem arredondamentos, 36.056 metros. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos que fazer é mudar a fórmula para: \[a^2 = c^2 - b^2\] Veja que agora o quadrado do cateto oposto é igual ao quadrado da hipotenusa menos o quadrado do cateto adjascente. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo. Veja agora como esse cálculo é feito em linguagem Python: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # vamos importar o módulo Math import math as math def main(): c = 36.056 # medida da hipotenusa b = 30 # medida do cateto adjascente # agora vamos calcular o comprimento da cateto oposto a = math.sqrt(math.pow(c, 2) - math.pow(b, 2)) # e mostramos o resultado print("A medida do cateto oposto é: %f" % a) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: A medida do cateto oposto é: 20.000878 Como podemos ver, o resultado retornado com o código Python confere com os valores da imagem apresentada. |
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se o primeiro caractere de cada palavra em uma string Python é o único em letra maiúscula usando a função istitle()Quantidade de visualizações: 8730 vezes |
Nesta dica mostrarei como podemos usar a função istitle() da linguagem Python para verificar se o primeiro caractere de cada palavra em uma frase ou texto é o único caractere em letra maiúscula. Se o teste for verdadeiro o retorno é true, caso contrário o retorno é false. Veja o exemplo completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- def main(): frase = "Gosto De Programar Em Python" if frase.istitle(): print("O primeiro caractere de cada palavra é maiusculo") else: print("O teste não resultou verdadeiro") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O primeiro caractere de cada palavra é maiusculo. |
Python ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
Python Insertion Sort - Como ordenar um vetor de inteiros usando a ordenação Insertion Sort (Ordenação por Inserção)Quantidade de visualizações: 3726 vezes |
Nesta dica veremos como implementar a ordenação Insertion Sort, Insertion-Sort, ou Ordenação por Inserção na linguagem Python. A ordenação Insertion Sort, Insertion-Sort, ou Ordenação por Inserção, possui uma complexidade de tempo de execução igual à ordenação Bubble Sort (Ordenação da Bolha), ou seja, O(n2). Embora mais rápido que o Bubble Sort, e ser um algorítmo de ordenação quadrática, a ordenação Insertion Sort é bastante eficiente para problemas com pequenas entradas, sendo o mais eficiente entre os algoritmos desta ordem de classificação, porém, nunca recomendada para um grande conjunto de dados. A forma mais comum para o entendimento da ordenação Insertion Sort é compará-la com a forma pela qual algumas pessoas organizam um baralho num jogo de cartas. Imagine que você está jogando cartas. Você está com as cartas na mão e elas estão ordenadas. Você recebe uma nova carta e deve colocá-la na posição correta da sua mão de cartas, de forma que as cartas obedeçam à ordenação. A cada nova carta adicionada à sua mão de cartas, a nova carta pode ser menor que algumas das cartas que você já tem na mão ou maior, e assim, você começa a comparar a nova carta com todas as cartas na sua mão até encontrar sua posição correta. Você insere a nova carta na posição correta, e, novamente, a sua mão é composta de cartas totalmente ordenadas. Então, você recebe outra carta e repete o mesmo procedimento. Então outra carta, e outra, e assim por diante, até não receber mais cartas. Esta é a ideia por trás da ordenação por inserção. Percorra as posições do vetor (array), começando com o índice 1 (um). Cada nova posição é como a nova carta que você recebeu, e você precisa inseri-la no lugar correto no sub-vetor ordenado à esquerda daquela posição. Vamos ver a implementação na linguagem Python agora? Observe o seguinte código, no qual temos um vetor de inteiros com os elementos {4, 6, 2, 8, 1, 9, 3, 0, 11}: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # método que permite ordenar o vetor de inteiros # usando a ordenação Insertion Sort def insertionSort(vetor): # percorre todos os elementos do vetor começando # pelo segundo elemento for i in range(len(vetor)): atual = vetor[i] # o valor atual a ser inserido # começa a comparar com a célula à esquerda de i j = i - 1 # enquanto vetor[j] estiver fora de ordem em relação # a atual while((j >= 0) and (vetor[j] > atual)): # movemos vetor[j] para a direita e decrementamos j vetor[j + 1] = vetor[j] j = j - 1 # colocamos atual em seu devido lugar vetor[j + 1] = atual # função principal do programa def main(): # cria uma lista de inteiros valores = [4, 6, 2, 8, 1, 9, 3, 0, 11] # exibimos o vetor na ordem original print("Ordem original:\n") for i in range(len(valores)): print(valores[i], end = " ") # vamos ordenar o vetor agora insertionSort(valores) # exibimos o vetor ordenado print("\n\nOrdenado:\n") for i in range(len(valores)): print(valores[i], end = " ") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Sem ordenação: 4 6 2 8 1 9 3 0 11 Ordenada usando Insertion Sort: 0 1 2 3 4 6 8 9 11 |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como repetir os elementos de um vetor ou matriz usando a função repeat() da NumPy do PythonQuantidade de visualizações: 844 vezes |
A função repeat() da biblioteca NumPy do Python é usada quando queremos repetir os elementos de um vetor ou matriz um determinado número de vezes. Em sua forma mais simples esta função pede um array e um número inteiro indicando a quantidade de repetições. Veja o código Python completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # vamos importar a biblioteca NumPy import numpy as np def main(): # vamos criar um vetor contendo 5 elementos vetor = np.array([5, 3, 9, 1, 4]) # agora vamos aplicar a função repeat() a este vetor novo_vetor = np.repeat(vetor, 3) # vamos mostrar o resultado print("O vetor original é: {0}".format(vetor)) print("O novo vetor é: {0}".format(novo_vetor)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O vetor original é: [5 3 9 1 4] O novo vetor é: [5 5 5 3 3 3 9 9 9 1 1 1 4 4 4] Veja agora o efeito desta função em uma matriz de 2 linhas por 3 colunas: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # vamos importar a biblioteca NumPy import numpy as np def main(): # vamos criar uma matriz de 2 linhas e 3 colunas matriz = np.array([(1, 2, 3), (4, 5, 6)]) # agora vamos aplicar a função repeat() a esta matriz nova_matriz = np.repeat(matriz, 3, 0) # vamos mostrar o resultado print("A matriz original é:\n\n{0}".format(matriz)) print("A nova matriz é:\n\n{0}".format(nova_matriz)) if __name__== "__main__": main() Note que informei o valor 0 para o terceiro parâmetro da função repeat(). Isso faz com que os elementos da matriz sejam repetidos no eixo x. Veja: A matriz original é: [[1 2 3] [4 5 6]] A nova matriz é: [[1 2 3] [1 2 3] [1 2 3] [4 5 6] [4 5 6] [4 5 6]] Se trocarmos o valor 0 por 1, o resultado será: A matriz original é: [[1 2 3] [4 5 6]] A nova matriz é: [[1 1 1 2 2 2 3 3 3] [4 4 4 5 5 5 6 6 6]] |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Água Fria: Sistemas de distribuição O golpe de aríete é um pico de pressão causado por uma alteração súbita na velocidade da vazão na tubulação. Esse picos de pressão são frequentemente acompanhados por um grande ruído na tubulação. Esse ruído provocado pelos golpes sucessivos não é prejudicial, causando apenas desconforto aos usuários, mas o choque hidráulico pode causar rompimento de tubulações (caso a pressão de ruptura seja ultrapassada), microfissuramento de tubulações plásticas que podem evoluir para trincas e fissuras e enfraquecimento de juntas, dando origem a vazamentos. Assinale a alternativa que representa uma forma de prevenir ou atenuar o Golpe de Aríete em uma rede de tubulações. A) Evitar o fechamento brusco de válvulas e registros. B) Aumentar a velocidade de escoamento. C) Projetar a tubulação evitando trechos curtos, preferir trechos longos conduzindo água diretamente a válvulas e torneiras. D) Instalar todas as válvulas de descarga em uma única coluna de distribuição. E) O modelo de válvula de descarga utilizada não ameniza as ondas de pressão causadas pelo seu fechamento. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Madeiras A densidade da madeira é uma das propriedades fundamentais em diversos processos industriais que envolvem seu processamento. Essa característica influencia diretamente uma variedade de aspectos, desde a seleção da matéria-prima adequada até a determinação das condições de processamento e a aplicação dos produtos finais. Sobre essa propriedade da madeira, assinale a opção correta. A) A contração volumétrica da madeira é inversamente proporcional à perda de umidade, que está ligada à quantidade de água adsorvida nas paredes celulares. B) As madeiras mais pesadas contêm maior quantidade de vazios que as madeiras mais leves, pois a perda de água das paredes celulares ocorreu abaixo do ponto de saturação das fibras. C) A quantidade e a disposição de elementos anatômicos da madeira, como raios, microfibrilas e elementos de vasos, não influenciam as variações da densidade dentro de uma mesma árvore. D) As madeiras de alta densidade têm proporcionalmente paredes celulares mais espessas e maior volume de lume e, consequentemente, menores valores de inchamento e de contração. E) A contração volumétrica da madeira é resultante das contrações axial, tangencial, radial e decorrem da perda de umidade. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?for i in range(0, 10, 3): print(i, end=" ") A) 0 3 6 9 B) 0 1 2 3 C) 3 6 9 12 D) 10 20 30 40 E) 0 0 0 0 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Perfil em aço As conexões dos perfis de aço contribuem para a projetação das estruturas de uma edificação, sendo responsáveis pela ligação entre pilares e vigas ou entre outros elementos. Elas podem variar, dependendo do tipo de esforço que se pretende resistir com o elemento estrutural. Considerando a figura apresentada a seguir, assinale a alternativa que indica corretamente o tipo de conexão que está sendo utilizado para unir essas peças. ![]() A) Conexão de cisalhamento. B) Conexão de momento com pinos. C) Conexão de cisalhamento com solda. D) Conexão de momento com solda. E) Conexão de tensão com solda. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fundações |
Questões de Concurso Engenharia Civil - Fundações COPEL - No estudo do subsolo para projeto de fundações, o número de golpes dados com um peso padrão, caindo em queda livre, de uma altura constante, necessários para a penetração de um amostrador padrão à profundidade de 30cm é denominado: A) Índice coesivo. B) Índice SPT. C) Carga morta. D) Índice de resistência à penetração. E) Carga aparente. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Python - Como gerar números aleatórios em Python usando o método random.randint() da biblioteca NumPy |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |