![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Python ::: Flask Micro Framework ::: Rotas e Roteamento |
Como criar rotas em suas aplicações Flask usando o decorador @app.route() - Tutorial Flask para iniciantesQuantidade de visualizações: 2420 vezes |
|
Aplicações web modernas usam uma técnica chamada roteamento nomeado, ou, na linguagem do pessoal do SEO, URLs amigáveis. Isso quer dizer que, em vez de termos URLS do tipo /livro.php?id_livro=39 nós temos /livro/39. Neste modelo de roteamento, livro é o nome de uma função Python que será chamada quando o usuário acessar este endereço, e 39 será o argumento passado para o método. Em Flask, as URLs são associadas às funções Python por meio do decorador @app.route(). Veja uma aplicação Flask completa que possui um método index() que é chamado quando o usuário acessa a raiz da aplicação:
# vamos importar a biblioteca Flask
from flask import Flask
# função principal do programa
def main():
# vamos criar a aplicação Flask
app = Flask(__name__)
# definimos a rota para a função index()
@app.route("/")
def index():
return "Este é o método index()"
# e iniciamos a aplicação web na porta 5000
app.run(port=5000, debug=True)
if __name__== "__main__":
main()
Note que a nossa aplicação Flask estará disponível na porta 5000. Assim, ao acessar o endereço http://127.0.0.1:5000 nós teremos o seguinte resultado: Este é o método index() Veja agora como criar uma URL /listar_usuarios e associá-la a uma função listar_usuarios():
# vamos importar a biblioteca Flask
from flask import Flask
# função principal do programa
def main():
# vamos criar a aplicação Flask
app = Flask(__name__)
# definimos a rota para a função index()
@app.route("/")
def index():
return "Este é o método index()"
# definimos a rota para a função listar_usuarios()
@app.route("/listar_usuarios")
def listar_usuarios():
return "Este é o método para listar os usuários"
# e iniciamos a aplicação web na porta 5000
app.run(port=5000, debug=True)
if __name__== "__main__":
main()
Agora, experimente acessar o endereço http://127.0.0.1:5000/listar_usuarios e veja o resultado. Se tudo estiver correto, você verá o seguinte resultado: Este é o método para listar os usuários Em mais dicas desta seção você verá como criar URLs com parâmetros e passá-los para suas funções Python. |
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: 3469 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: 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:
# 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:
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:
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. |
HTML5 ::: HTML5 + JavaScript ::: Canvas |
Programação gráfica para iniciantes - Como desenhar círculos com ou sem preenchimento usando o método arc() do objeto Canvas do HTML5Quantidade de visualizações: 7499 vezes |
Podemos usar o método arc() do objeto Canvas do HTML5 para desenhar círculos com ou sem prenchimento. Veja nos exemplos abaixo como isso pode ser feito. Primeiro um círculo sem preenchimento:
<!doctype html>
<html>
<head>
<title>O objeto Canvas do HTML5</title>
</head>
<body>
<Canvas id="canvas1" width="500" height="350"></Canvas>
<script type="text/javascript">
// obtemos uma referência ao elemento Canvas
var canvas = document.getElementById("canvas1");
// obtemos o contexto de desenho
var contexto = canvas.getContext("2d");
// vamos desenhar um círculo sem preenchimento com raio de 80
contexto.beginPath(); // início um novo caminho
// o círculo começa no x = 100, y = 100, começa no ângulo 0
// e vai até o ângulo 360 (as medidas são em radianos, não em graus)
contexto.arc(100, 100, 80, 0, 2 * Math.PI, false);
contexto.lineWidth = 2; // largura da linha
contexto.strokeStyle = '#990000'; // cor da linha
contexto.stroke(); // realiza o desenho
</script>
</body>
</html>
Ao abrir esta página HTML nós teremos o seguinte resultado: ![]() E agora um círculo preenchido:
<!doctype html>
<html>
<head>
<title>O objeto Canvas do HTML5</title>
</head>
<body>
<Canvas id="canvas1" width="500" height="350"></Canvas>
<script type="text/javascript">
// obtemos uma referência ao elemento Canvas
var canvas = document.getElementById("canvas1");
// obtemos o contexto de desenho
var contexto = canvas.getContext("2d");
// vamos desenhar um círculo sem preenchimento com raio de 80
contexto.beginPath(); // início um novo caminho
// o círculo começa no x = 100, y = 100, começa no ângulo 0
// e vai até o ângulo 360 (as medidas são em radianos, não em graus)
contexto.arc(100, 100, 80, 0, 2 * Math.PI, false);
// vamos preencher o círculo
contexto.fillStyle = "#CCCCCC"; // cor do preenchimento
contexto.fill(); // preenche de fato
contexto.lineWidth = 2; // largura da linha
contexto.strokeStyle = '#990000'; // cor da linha
contexto.stroke(); // realiza o desenho
</script>
</body>
</html>
Ao abrir esta página HTML nós teremos o seguinte resultado: ![]() |
JavaFX ::: Pacote javafx.scene.layout (Package javafx.scene.layout) ::: HBox (Classe HBox) |
Como definir o espaço interno do HBox do JavaFX usando o método setPadding()Quantidade de visualizações: 1276 vezes |
|
Em algumas situações nós precisamos definir o espaço interno, ou seja, o padding, do gerenciador de layout HBox. Para isso nós podemos usar o método setPadding() e fornecer a ele um objeto da classe javafx.geometry.Insets. Este método é herdado da classe javafx.scene.layout.Region. Lembre-se de que a função setPadding() define o espaço interno do VBox, ou seja, o espaço que deverá existir entre suas margens e os componentes contidos nele. Veja um trecho de código JavaFX no qual temos um gerenciador de layout HBox e três botões:
package estudosjavafx;
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
public class EstudosJavaFX extends Application {
public static void main(String[] args){
launch(args);
}
@Override
public void start(Stage primaryStage){
// vamos criar três botões
Button btn1 = new Button("Botão 1");
Button btn2 = new Button("Botão 2");
Button btn3 = new Button("Botão 3");
// agora criamos um laytou HBox e colocamos
// os três botões nele
HBox hBox = new HBox();
hBox.getChildren().add(btn1);
hBox.getChildren().add(btn2);
hBox.getChildren().add(btn3);
// vamos definir o espaço interno do HBox usando
// um Inserts (top, direita, baixo, esquerda)
hBox.setPadding(new Insets(20, 20, 20, 20));
// criamos a cena e fornecemos o layout a ela
// e definimos a largura e altura da cena
Scene scene = new Scene(hBox, 400, 300);
// adicionamos a cena ao palco principal
primaryStage.setScene(scene);
// e mostramos o palco
primaryStage.show();
}
}
Execute este código, experimente alterar os valores do objeto Insets fornecido ao método setPadding e veja os resultados obtidos. |
Nossas 20 dicas & truques de programação mais populares |
|
Java - Programação Orientada a Objetos em Java - Como usar o modificador static em suas aplicações Java QGIS - Como definir o título do projeto do QGIS usando PyQGIS e a função setTitle() da classe QgsProject |
Você também poderá gostar das dicas e truques de programação abaixo |
|
C - Como calcular a massa de um corpo dada sua energia cinética e sua velocidade usando a linguagem C C# - Como adicionar ou subtrair meses de uma data em C# usando a função AddMonths() da classe DateTime C++ Builder - Como habilitar ou desabilitar um TEdit usando a função EnableWindow() da API do Windows usando C++ Builder |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







