giovedì 22 novembre 2018

Compilatori: Python


Python non può essere considerato un programma compilato, ma un linguaggio pseudocompilato
Un interprete si occupa di verificare il codice sorgente (un file con estensione .py) e, se non ci sono errori, di eseguirlo. In Python, non esiste una fase di compilazione separata (come avviene in C/C++, per esempio) che generi un file eseguibile.
Essendo quindi un file pseudocompilato, rende python un linguaggio portabile. Quindi eseguito sui tre maggiori piattaforme: Windows, Mac e Linux.

Ha una licenza free software, cioè sia il download dell'interprete per il proprio pc, così come l'uso di Python nelle proprie applicazioni, è gratuito; inoltre può essere liberamente modificato, ridistribuito, secondo licenza open-source.

Per questo python da diversi anni è utilizzato per applicazioni complesse, per desktop, web, videogiochi e scripting di sistema.
E' importante per Google (youtube è basato su python) per il suo core business.

Per la nostra distribuzione KDE Neon/Kubuntu, basterà aprire Muon (se non lo avete, basterà installarlo attraverso discovery).
In muon, digitare idle3 e vi si presenterà la lista con anche idle-tools. Installateli insieme.

Idle è lo strumento di sviluppo per scrivere programmi in python.
Appena installato, basterà andare a cercarlo nel menù sviluppo, facilmente.
Una volta aperto il software, vi si presenterà la schermata seguente:


Le tre frecce con il cursore lampeggiante, vi darà già la possibilità di potere provare python, basterà scrivere:

print("Ciao Mondo")

senza «;» finale, e stamperà Ciao Mondo.

Adesso supponiamo di volere scrivere un programma che ci chiede un numero e di stamparlo a video. Il programma può essere:

import time

num = int(input("dammi un numero "))

print("Il numero che mi hai scritto è ", num)

time.sleep(1)
print()
print("GRAZIE DI AVERE UTILIZZATO PYTHON!!!")

Il file è molto comprensibile. Import si occupa di importare la libreria time.
A num  viene memorizzato il numero di tipo intero in input dato dall'utente.
print, si occuperà di stampare a video il numero
time.sleep(1), farà un attesa di 1 secondo, ecco perché importiamo la libreria time
Infine dopo avere stampato una riga, ci ringrazia di avere usato python

Salviamo il programma sempre in /home/nome_utente/Documenti, con estensione .py, ad esempio dammi.py ed eseguiamolo.

...spero che anche questa volta, vi ho incuriosito con un'altro linguaggio di programmazione. Serve davvero poco per imparare a lavorare in python. E se usato nella nostra distribuzione, utilizzando librerie come PyQt5 oppure il nuovissimo PySide2, si possono realizzare diversi GUI, scritte utilizzando Python.

Io, ad esempio, ho utilizzato python con arduino, per inviare stringhe di 16 caratteri ad un display (16x2), utilizzando la libreria serial da installare nella nostra distribuzione.

Eccone il file:


#!/usr/bin/env python
# -*- coding: latin-1 -*-

import serial
import time

sTesto = ""
s = True
xx = ""

arduino = serial.Serial('/dev/ttyUSB0', 9600, timeout=0)
time.sleep(1)

def scriviTesto(xx):
   xx = input("Scrivi la stringa da inviare ad Arduino (c,per finire)= ")
   
   
while(s):
   #*********************** 
   sTesto= scriviTesto(xx)
   
   if len(xx)<17 and len(xx)>1:
      print(len(xx))
      sTesto= scriviTesto(xx)
   else:
      print("Testo troppo lungo")
      sTesto= scriviTesto(xx)
      
   #Invio ad Arduino la stringa per chiusura connessione
   if sTesto == "c" or sTesto == "C":
      sTesto = "ConnesioneChiusa"
      s = False
         
   print(">>> " + sTesto)
   time.sleep(.20)
   arduino.write(sTesto.encode())
   
arduino.close()

print("Ciao.....")

Se ricevo dei like, forse posterò il mio lavoro con arduino.

...a presto...








Nessun commento:

Posta un commento

AVR Programming – a Step by Step Tutorial https://atmega32-avr.com/avr-programming-a-step-by-step-tutorial/