Você está aqui: Python ::: Dicas & Truques ::: Lista (List) |
Como usar a função zip() do Python para converter duas listas em conjuntos de tuplasQuantidade de visualizações: 894 vezes |
Nesta dica mostrarei como é possível usar a função zip() da linguagem Python para converter duas listas (lists) em um conjunto de tuplas, contendo, cada tupla, um elemento da primeira lista e um elemento da segunda. Veja 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 ---------------------------------------------------------------------- # método principal def main(): linguagens = ["Java", "Python", "Delphi", "C++"] codigos = [23, 54, 20, 91] # vamos mostrar os conteúdos das duas lists print("List de linguagens: {0}".format(linguagens)) print("List de códigos: {0}".format(codigos)) # agora vamos converter as duas lists em conjuntos de tuplas tuplas = zip(linguagens, codigos) # vamos mostrar as tuplas linguagem/código print("Tuplas linguagem/código: {0}".format(list(tuplas))) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: List de linguagens: ['Java', 'Python', 'Delphi', 'C++'] List de códigos: [23, 54, 20, 91] Tuplas linguagem/código: [('Java', 23), ('Python', 54), ('Delphi', 20), ('C++', 91)] Note como a função zip() associou cada nome de linguagem ao seu código correspondente. |
![]() |
Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: Passos Iniciais |
Como usar a biblioteca Pandas do Python em seus projetos de Data Science e Machine LearningQuantidade de visualizações: 3034 vezes |
A biblioteca Pandas foi criada por Wes McKinney em 2008 e, desde então, tem sido adotada em projetos que envolvem Big Data, Data Science, Data Mining, Machine Learning e até mesmo aplicações gerais de Inteligência Artificial (IA). Esta biblioteca nos oferece funções para o trabalho com datasets (conjunto de dados). Tais funções permitem analisar, limpar, explorar e manipular dados. Isso faz todo sentido, visto que o nome Pandas é uma referência à "Panel Data" e "Python Data Analysis". Já tenho o Pandas disponível na minha instalação do Python? Antes de iniciar qualquer projeto que envolva a bilioteca Pandas, é importante verificar se a mesma está disponível em sua instalação do Python. Isso pode ser de várias formas. Mostrarei como obter a lista de módulos usando a opção "list" do pip. Basta abrir uma janela de terminal e disparar o seguinte comando: C:\Users\Osmar>pip list Você terá um resultado parecido com: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- Package Version ----------------- ------- astroid 2.4.2 colorama 0.4.4 isort 5.6.4 lazy-object-proxy 1.4.3 mccabe 0.6.1 numpy 1.19.4 pandas 1.1.5 Pillow 8.0.1 pip 20.2.3 pylint 2.6.0 python-dateutil 2.8.1 pytz 2020.4 setuptools 49.2.1 six 1.15.0 toml 0.10.2 wrapt 1.12.1 wxPython 4.1.1 Uma outra forma é tentando importar o módulo pandas. Veja: ---------------------------------------------------------------------- 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 Pandas import pandas as pd def main(): # vamos mostrar a versão da biblioteca Pandas versao = pd.__version__ print("A versão do Pandas é:", versao) if __name__== "__main__": main() Se você tiver o Pandas instalado, o resultado desse código será algo como: A versão do Pandas é: 1.1.5 Se você não tiver a biblioteca Pandas instalada, 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 'pandas' File "C:\estudos_python\estudos.py", line 2, in <module> import pandas as pd Não tenho o Pandas ainda. O que faço? Abra uma janela de terminal e dispare o comando abaixo: C:\Users\Osmar>pip install pandas Depois de alguns segundos você verá o seguinte resultado: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- Collecting pandas Downloading pandas-1.1.5-cp39-cp39-win_amd64.whl (8.9 MB) |-| 8.9 MB 1.7 MB/s Collecting numpy>=1.15.4 Downloading numpy-1.19.4-cp39-cp39-win_amd64.whl (13.0 MB) |-| 13.0 MB 3.3 MB/s Collecting pytz>=2017.2 Downloading pytz-2020.4-py2.py3-none-any.whl (509 kB) |-| 509 kB 6.4 MB/s Collecting python-dateutil>=2.7.3 Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB) |-| 227 kB 3.2 MB/s Requirement already satisfied: six>=1.5 in c:\users\osmar\appdata\roaming\python\python39\site-packages (from python-dateutil>=2.7.3->pandas) (1.15.0) Installing collected packages: numpy, pytz, python-dateutil, pandas Successfully installed numpy-1.19.4 pandas-1.1.5 python-dateutil-2.8.1 pytz-2020.4 WARNING: You are using pip version 20.2.3; however, version 20.3.1 is available. You should consider upgrading via the 'c:\python_3_9_1\python.exe -m pip install --upgrade pip' command. Obteve resultado parecido? Pronto! Você já pode começar a usar a biblioteca Pandas em seus aplicações Python. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Hidrologia e Hidráulica |
Exercícios Resolvidos de Python - FEMPERJ-2012-TCE-RJ: A vazão de dimensionamento de uma galeria de águas pluviais que drena uma área densamente urbanizada de 10 hectaresQuantidade de visualizações: 368 vezes |
Pergunta/Tarefa: 1) FEMPERJ-2012-TCE-RJ: A vazão de dimensionamento de uma galeria de águas pluviais que drena uma área densamente urbanizada de 10 hectares, considerando-se uma chuva de projeto com intensidade de 60 mm/hora, duração igual ao tempo de concentração da bacia e coeficiente de escoamento superficial igual a 0,90, através do Método Racional, é: A) 150 m3/s B) 0,150 l/s C) 1,5 m3/s D) 150 l/s E) 15 m3/s Sua saída deve ser parecida com: Intensidade da chuva em mm/h: 60 Área da bacia em hectares: 10 Coeficiente de escoamento: 0.9 A vazão de dimensionamento é: 1.5 m3/s O primeiro passo para resolver esta questão é relembrar a fórmula da Vazão pelo Método Racional. Apresentado pela primeira vez em 1851 por Mulvaney e usado por Emil Kuichling em 1889, o Método Racional é um método indireto e estabelece uma relação entre a chuva e o escoamento superficial (deflúvio). Usamos esta fórmula para calcular a vazão de pico de uma determinada bacia, considerando uma seção de estudo. Eis a fórmula: \[Q = \frac{C \cdot I \cdot A}{360} \] Onde: Q = vazão de pico (m3/s); C = coeficiente de escoamento superficial que varia de 0 a 1. Coeficiente de Runoff (adimensional). I = intensidade média da chuva (mm/h); A = área da bacia (ha), onde 1 ha = 10.000m2. A [[menor_igual]] 300 ha. Na questão do concurso nós já temos a intensidade da chuva em milímetros por hora e a área já está em hectares. Tudo que temos a fazer é jogar na fórmula. Então, hora de vermos a resolução comentada deste exercício usando 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 ---------------------------------------------------------------------- # função principal do programa def main(): # vamos ler a precipitação ou intensidade da chuva em mm/h intensidade = float(input("Intensidade da chuva em mm/h: ")) # vamos ler a área da bacia em hectares area_bacia = float(input("Área da bacia em hectares: ")) # vamos ler o coeficiente de escoamento coeficiente = float(input("Coeficiente de escoamento: ")) # e vamos calcular a vazão de pico em metros cúbicos vazao = ((coeficiente * intensidade * area_bacia) / 360.0) # e mostramos o resultado print("A vazão de dimensionamento é: {0} m3/s".format(vazao)) if __name__== "__main__": main() |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem |
Exercício Resolvido de Python - Como calcular o Número de Reynolds em Python - Leite integral a 293 K, massa específica de 1030 kg/m3 e viscosidade de 2,12.10-3 N.s/m2 está escoando a uma razãoQuantidade de visualizações: 38 vezes |
Pergunta/Tarefa: O Número de Reynolds é uma quantidade adimensional usada na mecânica dos fluidos para prever padrões de fluxo em diferentes situações de escoamento de fluidos. É definido como a razão entre forças inerciais e forças viscosas dentro de um fluido. 1) Leite integral a 293 K, massa específica de 1030 kg/m3 e viscosidade de 2,12.10-3 N.s/m2 está escoando a uma razão de 0,605 kg/s em uma tubulação de 63,5 mm de diâmetro. a) Calcule o número de Reynolds. O escoamento é laminar ou turbulento? b) Calcule a vazão em m3/s para um número de Reynolds de 2100 e a velocidade em m/s. Sua saída deverá ser parecida com: Informe a Massa Específica do fluido (kg/m3): 1030 Informe a Viscosidade Dinâmica do fluido (N.s/m2): 2.12e-3 Informe a Vazão Mássica (kg/s): 0.605 Informe o Diâmetro da Tubulação (mm): 63.5 A área da tubulação é: 0.003166921744359361 m2 A vazão volumétrica do fluido é: 0.000587378640776699 m3/s A velocidade de escoamento do fluido é: 0.18547305181218499 m/s O Número de Reynolds é: 5722.106110271679 Informe o novo Número de Reynolds: 2100 A nova velocidade de escoamento do fluido é: 0.06806819050531304 m/s A nova vazão volumétrica do fluido é: 0.0002155666326104713 m3/s O primeiro passo para a resolução deste exercício é nos lembrarmos da Fórmula do Número de Reynolds: \[R_e = \frac{\rho \cdot v \cdot D}{\mu} \] Onde: [[rho]] é a massa específica do fluido medida em kg/m3; v = velocidade média do fluido em m/s; D = diâmetro para o fluxo do tubo em metros (m); [[mu]] é a viscosidade dinâmica do fluido em N.s/m2. Obs.: No código eu mostro como fazer as conversões de unidades necessárias. Veja a resolução completa para o exercício em Python, comentada linha a linha: ---------------------------------------------------------------------- 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 Math import math # método principal def main(): # vamos ler a massa específica da água massa_especifica = float(input("Informe a Massa Específica (kg/m3): ")) # vamos ler a viscosidade dinâmica do fluido viscosidade_dinamica = float(input("Informe a Viscosidade (N.s/m2): ")) # vamos ler a vazão mássica vazao_massica = float(input("Informe a Vazão Mássica (kg/s): ")) # vamos ler o diâmetro da tubulação diametro = float(input("Informe o Diâmetro da Tubulação (mm): ")) # o primeiro passo é calcular a área da seção transversal da tubulação # a) convertemos milímetros para metros diametro = diametro / 1000.0 # b) calculamos a área em metros quadrados area = (math.pi * math.pow(diametro, 2) / 4) # vamos converter a vazão mássica em vazão volumétrica vazao = vazao_massica / massa_especifica # vamos obter a velocidade de escoamento do fluido velocidade = vazao / area # e finalmente calculamos o Número de Reynolds numero_reynolds = (massa_especifica * velocidade * diametro) / viscosidade_dinamica # mostramos os resultados print("\nA área da tubulação é: {0} m2".format(area)) print("A vazão volumétrica do fluido é: {0} m3/s".format(vazao)) print("A velocidade de escoamento do fluido é: {0} m/s".format(velocidade)) print("O Número de Reynolds é: {0}".format(numero_reynolds)) # vamos ler o novo Número de Reynolds novo_numero_reynolds = float(input("\nInforme o novo Número de Reynolds: ")) # vamos calcular a velocidade para o novo Reynolds nova_velocidade = ((viscosidade_dinamica * novo_numero_reynolds) / (massa_especifica * diametro)) print("A nova velocidade de escoamento do fluido é: {0} m/s".format(nova_velocidade)) # vamos calcular a nova vazão volumétrica nova_vazao = area * nova_velocidade print("A nova vazão volumétrica do fluido é: {0} m3/s".format(nova_vazao)) if __name__== "__main__": main() O primeiro Número de Reynolds, ou seja, 5722.1061, caracteriza o escoamento como turbulento, pois é maior que 2400. Já o Número de Reynolds 2100 caracteriza o escoamento como escoamento de transição (saindo do escoamento laminar e indo para o escoamento turbulento), já que é maior que 2000 e menor que 2400. |
Python ::: PyQt GUI Toolkit ::: QMainWindow |
Como criar a janela principal de uma aplicação Python PyQt usando a classe QMainWindowQuantidade de visualizações: 1390 vezes |
Em geral toda aplicação GUI, ou seja, uma aplicação de interface visual, rodando no Window, Linux, MAC, etc, possui uma janela principal. No PyQt tal janela é criada como uma instância da classe QMainWindow. Veja a posição desta classe na hierarquia de classes do PyQt: QObject, QPaintDevice QWidget QMainWindow Uma janela QMainWindow possui o seu próprio layout, no qual podemos adicionar uma barra de ferramentas QToolBar, um QDockWidget (que serve para controles que "grudam" em lados diferentes da tela), uma barra de menus QMenuBar e uma barra de status QStatusBar. O layout oferecido pela classe QMainWindow possui uma área central que pode ser ocupada por qualquer tipo de controle visual. É nessa área central que podemos colocar outros tipos de gerenciadores de layouts, que servirão como containers para os componentes visuais da aplicação. Veja uma aplicação PyQt completa na qual temos uma janela principal QMainWindow e um botão QPushButton. Observe como tiramos proveito da programação orientada em Python para criar uma classe JanelaPrincipal que herda de QMainWindow: ---------------------------------------------------------------------- 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 * # vamos criar uma classe que herda de QMainWindow class JanelaPrincipal(QMainWindow): # construtor da classe def __init__(self): super().__init__() # definimos o título da janela self.setWindowTitle("Cadastro de Produtos") # vamos criar um botão QPushButton botao = QPushButton("Novo Produto") # definimos este botão como o controle central # da janela principal self.setCentralWidget(botao) if __name__== "__main__": # cria a aplicação app = QApplication(sys.argv) # cria a janela principal e a coloca visível janela_principal = JanelaPrincipal() janela_principal.show() # executa a aplicação app.exec() |
Python ::: Dicas & Truques ::: Lista (List) |
Como excluir e retornar um item da lista Python baseado em seu índice usando a função pop()Quantidade de visualizações: 9212 vezes |
Nesta dica mostrarei como é possível usar o método pop() do objeto List da linguagem Python para excluir e retornar um item de uma lista baseado em seu índice. Tudo que precisamos fazer é informar o índice do elemento a ser excluído e retornado. 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 determinado item em uma lista """ def main(): # cria uma lista de inteiros valores = [4, 23, 7, 1, 0, 54] # imprime a lista print(valores) # remove um determinado item # vamos remover o terceiro item (7) valor = valores.pop(2) print("Item removido:", valor) # exibe a lista novamente print(valores) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: [4, 23, 7, 1, 0, 54] Item removido: 7 [4, 23, 1, 0, 54] É importante ficarmos atentos aos erros que podem ocorrer com chamadas à função pop(). Por exemplo, se a List estiver vazia, o seguinte erro será exibido: ---------------------------------------------------------------------- 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: IndexError pop from empty list Se, por exemplo, fornecermos ao método pop() um índice inexistente, o seguinte erro ocorrerá: ---------------------------------------------------------------------- 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: IndexError pop index out of range |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: NumPy Python Library |
Exercício Resolvido de Python NumPy - Como somar duas matrizes usando a biblioteca NumPy do PythonQuantidade de visualizações: 1074 vezes |
Pergunta/Tarefa: Escreva um programa Python que usa a biblioteca NumPy para efetuar a soma de duas matrizes de mesma ordem, ou seja, mesmo número de linhas e colunas. Seu código deverá somar o primeiro elemento da matriz A com o primeiro elemento da matriz B, e assim por diante. Sua saída deverá ser parecida com: A primeira matriz é: [[4 1 3] [9 2 5]] A segunda matriz é: [[ 3 10 2] [ 1 13 4]] A matriz soma é: [[ 7 11 5] [10 15 9]] Veja a resolução comentada deste exercício em 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 a biblioteca NumPy import numpy as np # função principal do programa def main(): # vamos criar a primeira matriz a = np.array([[4, 1, 3], [9, 2, 5]]) # vamos criar a segunda matriz b = np.array([[3, 10, 2], [1, 13, 4]]) # vamos somar as duas matrizes c = a + b # e agora mostramos o resultado print("A primeira matriz é:\n{0}".format(a)) print("A segunda matriz é:\n{0}".format(b)) print("A matriz soma é:\n{0}".format(c)) if __name__== "__main__": main() |
Python ::: Python Turtle ::: Formulários e Janelas |
Como definir o título da janela do Python Turtle usando a função title()Quantidade de visualizações: 1289 vezes |
A função title() do Turtle é muito útil quando queremos definir o título da nossa aplicação Python Turtle. Tudo que temos a fazer é efetuar uma chamada a essa função fornecendo o título que queremos que seja exibido na barra de títulos. Veja o código Python Turtle 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 o módulo Turtle import turtle # método principal def main(): # vamos criar a tela gráfica tela = turtle.Screen() # vamos definir o título da janela tela.title("Meu programa Python Turtle") # vamos definir o tamanho da janela tela.setup(600, 450) # entramos no loop de eventos tela.mainloop() if __name__== "__main__": main() Note que não é possível usar a função title() para retornar o título da janela. Caso você queira fazer isso, é melhor usar uma variável para guardar o título da janela e manipulá-la durante a execução do programa. |
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. |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Java - Padrões de projeto para iniciantes - Como usar o padrão de projeto Singleton em suas aplicações Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |