Você está aqui: Python ::: PyQt GUI Toolkit ::: QPushButton |
Como fechar a janela principal de uma aplicação PyQt ao clicar em um botão QPushButtonQuantidade de visualizações: 723 vezes |
Nesta dica mostrarei como podemos detectar o evento clicked de um botão QPushButton para fechar a janela principal da nossa aplicação Python PyQt. Note que aqui eu criei a janela principal como sub-classe da classe QWidget. Veja também como usamos a função connect() para conectar o evento clicked do botão ao método close() da classe QWidget. Eis 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 os módulos necessários import sys from PyQt6.QtCore import * from PyQt6.QtGui import * from PyQt6.QtWidgets import * # uma classe JanelaPrincipal que extende QWidget class JanelaPrincipal(QWidget): # construtor da classe def __init__(self): # chama o construtor da super classe super().__init__() # define o tamanho da janela self.resize(500, 300) #define o título da janela self.setWindowTitle("Cadastro de Clientes") # criamos um botão QPushButton botao = QPushButton("Fechar", self) # fazemos a conexão com a função que fecha a aplicação botao.clicked.connect(self.close) # e definimos a posição do botão na janela botao.move(10, 10) if __name__== "__main__": # criamos a aplicação PyQt app = QApplication(sys.argv) # criamos a janela principal janela_principal = JanelaPrincipal() # tornamos a janela visível janela_principal.show() # e executamos a aplicação sys.exit(app.exec()) |
![]() |
Python ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Como acessar variáveis globais a partir de seus métodos PythonQuantidade de visualizações: 12825 vezes |
Por padrão, nossos próprios métodos e funções em Python não enxergam as variáveis definidas fora do seu escopo, e quando o fazem, é somente para leitura, já que alterações nas variáveis fora do escopo fazem com que o interpretar crie versões locais dessas variáveis. Uma solução é usar a palavra-chave "global" antes do nome da varíável que queremos acessar. Veja como isso pode ser feito no trecho de código abaixo: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- # uma variável global nome = "Carlos" # um método que acessa a variável global def metodo(): global nome nome = "Osmar J. Silva" # função principal do programa def main(): # chama o método metodo() # mostra o resultado print("Valor alterado para:", nome) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Valor alterado para: Osmar J. Silva |
Python ::: Python para Engenharia ::: Engenharia Civil - Cálculo Estrutural |
Como calcular o Momento Fletor Mínimo e a Excentricidade Mínima de 1ª Ordem de um pilar em Python - Python para Engenharia Civil e Cálculo EstruturalQuantidade de visualizações: 354 vezes |
![]() O cálculo e dimensionamento de pilares, sejam pilares de canto, extremidade ou intermediários, sempre seguem alguns passos cujas ordens são muito importantes, pois os dados de entrada de um passo podem vir de um ou mais passos anteriores. Em dicas anteriores do uso da linguagem Python no cálculo de pilares eu mostrei como calcular os esforços solicitantes majorados em pilares e também como calcular o índice de esbeltez de um pilar nas direções x e y. Nesta dica mostrarei como calcular o Momento Fletor Mínimo e a Excentricidade Mínima de 1ª Ordem de um pilar. Estes dados são muito importantes para a aplicação das fórmulas que embasam a área de aço a ser usada no pilar. Note que a Excentricidade Mínima de 1ª Ordem pode ser desprezada no caso de pilares intermediários (também chamados pilares de centro). O Momento Fletor Mínimo é o momento mínimo que deve ser considerado, mesmo em pilares nos quais a carga está centrada, e é calculado por meio da seguinte fórmula: \[M_\text{1d,min} = Nd \cdot (1,5 + (0,03 \cdot h) \] Onde: M1d,min é o momento fletor mínimo na direção x ou y em kN.cm. Nd são os esforços solicitantes majorados em kN. h é a dimensão do pilar na direção considerada (x ou y) em cm. A Excentricidade Mínima de 1ª Ordem do pilar pode ser calculada por meio da fórmula: \[e_\text{1,min} = \frac{M_\text{1d,min}}{Nd} \] Onde: e1,min é excentricidade mínima de 1ª ordem na direção escolhida. Nd são os esforços solicitantes majorados em kN. Note que, a exemplo do momento fletor mínimo, a excentricidade mínima de 1ª ordem também deve ser calculada nas direções x e y do pilar. Vamos ao código Python agora? Veja que o código pede para o usuário informar as dimensões do pilar nas direções x e y em centímetros, a carga total que chega ao pilar em kN e mostra o momento fletor mínimo e a excentricidade mínima de 1ª ordem no pilar, tanto na direção x quanto na direção y: ---------------------------------------------------------------------- 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 principal def main(): # vamos pedir as dimensões do pilar hx = float(input("Informe a dimensão do pilar na direção x (em cm): ")) hy = float(input("Informe a dimensão do pilar na direção y (em cm): ")) # vamos pedir a carga total no pilar em kN Nk = float(input("Informe a carga total no pilar (em kN): ")) # vamos obter o menor lado do pilar (menor dimensão da seção transversal) if (hx < hy): b = hx else: b = hy # agora vamos calcular a área do pilar em centímetros quadrados area = hx * hy # a área está de acordo com a norma NBR 6118 (ABNT, 2014) if (area < 360): print("A área do pilar não pode ser inferior a 360cm2") return # vamos calcular a força normal de projeto Nd yn = 1.95 - (0.05 * b) # de acordo com a norma NBR 6118 (ABNT, 2014) Tabela 13.1 yf = 1.4 # regra geral para concreto armado Nd = yn * yf * Nk # e agora vamos calcular o momento fletor mínimo na direção x do pilar M1d_min_x = Nd * (1.5 + (0.03 * hx)) # e agora vamos calcular o momento fletor mínimo na direção y do pilar M1d_min_y = Nd * (1.5 + (0.03 * hy)) # agora vamos calcular a excentricidade mínima de 1ª ordem na direção x do pilar e1x_min = M1d_min_x / Nd # e finalmente a excentricidade mínima de 1ª ordem na direção y do pilar e1y_min = M1d_min_y / Nd # e mostramos os resultados print("\nO momento fletor mínimo na direção x é: {0} kN.cm".format( round(M1d_min_x, 2))) print("O momento fletor mínimo na direção y é: {0} kN.cm".format( round(M1d_min_y, 2))) print("A excentricidade mínima de 1ª ordem na direção x é: {0} cm".format( round(e1x_min, 2))) print("A excentricidade mínima de 1ª ordem na direção y é: {0} cm".format( round(e1y_min, 2))) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe a dimensão do pilar na direção x (em cm): 40 Informe a dimensão do pilar na direção y (em cm): 19 Informe a carga total no pilar (em kN): 841.35 O momento fletor mínimo na direção x é: 3180.3 kN.cm O momento fletor mínimo na direção y é: 2438.23 kN.cm A excentricidade mínima de 1ª ordem na direção x é: 2.7 cm A excentricidade mínima de 1ª ordem na direção y é: 2.07 cm |
Python ::: Dicas & Truques ::: Lista (List) |
Curso de Python - Como ordenar uma lista de strings baseado no tamanho de cada umaQuantidade de visualizações: 8111 vezes |
Este exemplo mostra como ordenar os elementos de uma List de strings baseado no tamanho da palavra, frase ou texto. Note como o valor "key = len" como argumento para o método sort() da classe List. Veja o código completo para a dica: ---------------------------------------------------------------------- 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(): # cria uma lista de nomes nomes = ['Carlos', 'Igor', 'Osmar', 'Fernanda'] # exibe a lista na ordem original print(nomes) # ordena a lista nomes.sort(key = len) # exibe a lista ordenada print(nomes) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: ['Carlos', 'Igor', 'Osmar', 'Fernanda'] ['Igor', 'Osmar', 'Carlos', 'Fernanda'] |
Python ::: Dicas & Truques ::: Lista (List) |
Como remover e retornar um item aleatório em uma lista Python usando a função pop() e um número randômicoQuantidade de visualizações: 9461 vezes |
Em dicas anteriores eu mostrei como é possível usar o método pop() do objeto List da linguagem Python para remover elementos no início, final e em determinadas posições de uma lista. Agora mostrarei como é possível fornecer um índice aleatório para a função pop(), de forma a sortear o elemento que estará sendo removido. Note que o número randômico deverá estar nas faixas de índices aceitáveis. Veja o exemplo Python 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 ---------------------------------------------------------------------- """ Este exemplo mostra como excluir e retornar um ítem aleatório em uma lista """ import random def main(): # cria uma lista de inteiros valores = [4, 23, 7, 1, 0, 54] # imprime a lista print(valores) # remove um ítem aleatório valor = valores.pop(random.randrange(0, len(valores))) print("Item removido:", valor) # exibe a lista novamente print(valores) if __name__== "__main__": main() Ao executar este código Python nós teremos um resultado parecido com: [4, 23, 7, 1, 0, 54] Item removido: 54 [4, 23, 7, 1, 0] |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Passos Iniciais |
Machine Learning para iniciantes - Como usar a biblioteca NumPy em seus programas PythonQuantidade de visualizações: 2191 vezes |
Criada em 2005 por Travis Oliphant, a biblioteca NumPy é uma biblioteca Python que, embora escrita parcialmente em código Python, possui trechos de código C ou C++, principalmente as partes que requerem processamento ou computação mais veloz. Estudiosos, entusiastas e desenvolvedores de soluções envolvendo Data Science, Deep Learning, Machine Learning e Inteligência Artificial (IA) em geral, encontram nessa biblioteca muitas funções úteis para a criação e manipulação de vetores e matrizes, além de funções para trabalhar no domínio de algebra linear e transformação fourier. A biblioteca NumPy (Numerical Python) é um projeto open source e pode ser usada livremente em qualquer programa Python. Uma das razões para a sua adoção é a substituição das listas Python pelos vetores e matrizes NumPy, já que estes últimos são 50 vezes mais rápidas que as listas Python, que muitas vezes fazem o papel de arrays. Minha instalação do Python já possui a biblioteca NumPy? A melhor forma de descobrir se a NumPy já está disponível para os seus códigos Python é rodando o seguinte trecho de 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 bibliteca NumPy import numpy as np def main(): # construimos um vetor de cinco elementos vetor = np.array([20, 3, 87, 4, 120]) # imprimimos seu conteúdo print(vetor) if __name__== "__main__": main() Se você vir o resultado abaixo: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- [ 20 3 87 4 120] então sua instalação do Python já contém a biblioteca NumPy e você está pronto(a) para experimentar as demais dicas e truques dessa seção. Porém, se você ainda não tiver a NumPy, a seguinte mensagem de erro será exibida: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- Exception has occurred: ModuleNotFoundError No module named 'numpy' File "C:\estudos_python\estudos.py", line 2, in <module> import numpy as np Não se desespere. Basta abrir uma janela de prompt e disparar o comando abaixo: pip install numpy Aguarde alguns minutos para que o Pip baixe e instale a biblioteca. Em seguida tente executar o código acima novamente. Agora é só aproveitar tudo que a biblioteca NumPy tem a nos oferecer. |
Python ::: Dicas & Truques ::: Lista (List) |
Como contar quantas vezes um elemento aparece em uma lista do Python usando a função count()Quantidade de visualizações: 8153 vezes |
Em várias situações nós precisamos contar as ocorrências de um item em uma List do Python, ou seja, queremos saber quantas vezes um determinado elemento aparece na lista. Para isso nós podemos usar a função count() do objeto List. Veja um código Python completo demonstrando seu uso: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- # função principal do programa def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 2, 17] # vamos mostrar o conteúdo dessa lista print("Conteúdo da lista: {0}".format(valores)) # verifica a quantidade de vezes que o # valor 2 aparece print("O valor 2 aparece", valores.count(2), "vezes") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Conteúdo da lista: [2, 5, 12, 2, 3, 2, 17] O valor 2 aparece 3 vezes |
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 ::: Dicas & Truques ::: Lista (List) |
Como ordenar uma lista de inteiros em Python de acordo com a soma dos dígitos de seus elementos usando uma função lambdaQuantidade de visualizações: 791 vezes |
Nesta dica mostrarei como podemos usar uma função lambda em Python para ordenar uma lista de inteiros de acordo com a soma dos seus dígitos. Este é um código muito interessante e que permitirá um melhor entendimento de funções lambda em Python. Veja o código 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 ---------------------------------------------------------------------- # método usado para ordenar a lista de acordo com a soma # de seus dígitos def ordenar(vetor): return sorted(vetor, key=lambda n: sum(int(c) for c in str(n) if c != "-")) # função principal do programa def main(): # vamos criar uma lista de inteiros valores = [21, 10, 8, 32, 70, 41, 40, 11] # vamos exibir a lista original print("Lista na ordem original: {0}".format(valores)) # agora vamos ordenar de acordo com a soma dos dígitos lista_ordenada = ordenar(valores) print("Lista ordenada: {0}".format(lista_ordenada)) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: Lista na ordem original: [21, 10, 8, 32, 70, 41, 40, 11] Lista ordenada: [10, 11, 21, 40, 32, 41, 70, 8] |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Java - Como usar a classe Character da linguagem Java para tratar caracteres individuais em seus programas |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |