Mensagens

Python - Menus com Tabs

Imagem
Python - Menus com Tabs Uma utilidade do Tkinter, python, é o uso de Tabs para desfraldar vários separadores numa aplicação. Com isto posso por exemplo criar um código e formulário para cada país, se for cálculo diferente numa qualquer situação. Isto pode-se aplicar a qualquer software que precise de alguma "internacionalização"... Vamos ver a que ideias se pode aplicar. O código para os separadores / tabs é fácil de implementar, frame é atribuida a tab1 tab2 tab3 etc, em vez de atribuida a window (no caso abaixo). Para atribuir e separar código, talvez com modulos, como este exemplo para as funções. Seguimos...

OpenRailWayMap - Muito interessante

Imagem
OpenRailWayMap - Muito interessante Um mapa interactivo com base no OpenStreetMap, de caminhos de ferro. No exemplo da primeira imagem temos as diferentes bitolas na Europa. Com as opções de visualização mostradas podemos por exemplo verificar se vemos uma linha de alta velocidade ou convencional. Colocando o zoom a outro nível aparecem mais detalhes. Até com os corredores previstos para a LAV... E em Lisboa os eléctricos e metro. Com mais zoom é possível observar as vias e kms. Tem uma API mas não vi uma opção de guardar como na vesão de estradas.

Linha do Oeste - Breve visita

Imagem
Linha do Oeste - Breve visita Algumas fotos e considerações sobre a obra de modernização da Linha do Oeste A linha do Oeste começou a ser inaugurada na última vintena de 1800. Ligava inicialmente Alcântara à Figueira da Foz. E com o Ramal de Alfarelos a ligação à Linha do Norte e Coimbra. A modernização da Linha do Oeste, com a electrificação e outras melhorias pode ser uma mais valia para as populações da zona Oeste. https://www.infraestruturasdeportugal.pt/pt-pt/infraestruturas/rede-ferroviaria De Norte para Sul... Apeadeiro de Sapataria. Apeadeiro de Sapataria, vista para Sul Nesta foto salienta-se a curvatura da plataforma de passageiros, dada a curva com escala, claro. Túnel de Sapataria. Túnel Sapataria - Emboquilhamento Norte Nesta foto nota-se um pouco o rebaixamento da plataforma por consequência da necessidade de electrificação. Vê-se um pouco das diferentes soluções de catenária. Estação de Mafra. Estação de Mafra - Vista para Sul Mafra Gare, Plataforma parcialmente em curva...

Python - numeros

Imagem
Python - Números por extenso Para escrever números por extenso tendo um número em numeral usa-se uma biblioteca. Em algum caso pode fazer falta a escrita de um número por extenso. Ou seja por exemplo transformar o número 180 em "Cento e oitenta". Podemos programar o algoritmo, ou podemos pesquisar antes e usar uma biblioteca já pronta. É o caso do num2words  que realiza por nós essa tarefa. https://pypi.org/project/num2words/ Podemos instalar com: pip install num2words E depois importar no início do programa ou módulo: from num2words import num2words O uso é bastante simples como é o caso seguinte que lê de uma interface tkinter o campo quantia:     numero = int ( ficheiro_recibos [ 4 ].rstrip( ' \r\n ' )  )     num_extenso = num2words( numero , lang = 'pt' )     print ( f 'Número: { num_extenso } ' ) Permite configurar vários idiomas, o que é óptimo. O output é o seguinte: Número: cento e oitenta

Linguagens diferentes resultados iguais

Imagem
Linguagens diferentes resultados iguais Para operações de cálculo matemático e manipulação de ficheiros o resultado é independente da tecnologia de programação. Como era de esperar, apesar de o cálculo ser feito com linguagens de programação diferentes, o resultado é igual. Na imagem acima temos dois ficheiros, que embora tenham o mesmo nome e conteúdo foram criados por linguagens de programação diferentes, Python e Javascript, com a leitura do mesmo ficheiro Excel de dados. Como coloquei no post anterior a interface gráfica tem os mesmos elementos. Ambas linguagens partilham pedaços comuns e outros bem diferentes. Parte da diferença explica-se pela metodologia de criar a interface gráfica. A programação de Javascript + HTML é um pouco mais moldável, permitindo por exemplo desenhar tabelas no ecrã mais facilmente que em Tkinter (Python). É bastante util, pois podemos ressaltar uma janela apenas com resultados ou informação temporária, ou linkar para uma página HTML de ajuda. Cada tecno...

Caso simples de uso do ChatGPT - programação

Imagem
Caso simples de uso do ChatGPT - Programação Usei a AI, ChatGPT para transformar uma função de Python numa função de Javascript Um uso típico dos modelos de LLM é a aplicação à programação. Seja para criar código ou no caso do exemplo para transformar código. Inclusivamente faz notas sobre o trabalho realizado. Este exercício foi uma primeira abordagem ao problema, digamos, já que tenho um código funcional em Python e queria transformar o mesmo para Javascript, como é uma programação funcional pode ser transformada e ajustada aos poucos. Na parte direita no console é possível observar dados provenientes da função transformada. É possível comparar lado a lado o código nas duas linguagens. No código JS apresentado, o ChatGPT eliminou alguns comentários.

Python vs HTML

Imagem
Python vs HTML Uma aplicação simples tanto pode ser realizada com tecnologias Web (HTML CSS JS) ou Python. Para a resolução de um determinado problema prático na área da engenharia, na maior parte dos casos a tecnologia de "programação" usada é indiferente, pois obtém-se o mesmo resultado. Aplicando a um dos exemplos em que tenho estado empenhado ultimamente, o que está por detrás da interface para com o utilizador pode realizar os mesmos passos numa e noutra tecnologia. A interface é ligeiramente diferente (pode-se aproximar mais o aspecto gráfico) e o modo de "abertura" e uso do programa diverge um pouco, num caso (Python) será um normal programa executável, e no outro caso (HTML) será uma aplicação que corre no navegador Web. Ambas tecnologias têm vantagens e desvantagens como é óbvio.  Ambas abrem e modificam um ficheiro Excel. Ambas realizam cálculos. Ambas conseguem escrever no disco um ficheiro de resultados. No fundo é o importante. Apesar dos "hypes...