User Tools

Site Tools


appunti3s:modulo_python

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
appunti3s:modulo_python [2020/07/05 18:10] – [Creare un modulo] profproappunti3s:modulo_python [2020/07/29 18:38] (current) profpro
Line 1: Line 1:
 < [[appunti3s:linguaggio python]] < [[appunti3s:linguaggio python]]
 +
 +==== Installare un modulo ====
 +
 +  apt update
 +  apt install python-tk
  
 ====Usare un Modulo==== ====Usare un Modulo====
  
 Per usare alcune funzioni bisogna fare //import// Per usare alcune funzioni bisogna fare //import//
-(in python3 diventa tkinter)+(in python3 diventa tkinter, minuscolo)
  
   >>> import Tkinter   >>> import Tkinter
Line 10: Line 15:
  
 Quando si fa //import Tkinter// viene cercato un file Tkinter.py dentro qualche cartella (si veda //sys.path//) Quando si fa //import Tkinter// viene cercato un file Tkinter.py dentro qualche cartella (si veda //sys.path//)
 +
 +Si potrebbe ottenere una semplificazione del codice scrivendo
 +
 +  >>> from Tkinter import *
 +  >>> luigi = Tk()
 +
 +Tuttavia è rischioso perché unisce il namespace di un modulo con quello attuale e rischia di avere omonimie.
 +
 +Per mostrare gli attributi disponibili in un modulo, basta usare **dir**.
 +
 +  >>> dir (Tkinter)
  
 ====Creare un modulo==== ====Creare un modulo====
Line 15: Line 31:
 Dato che un modulo da importare non è altro che un file.py, è facile crearne uno Dato che un modulo da importare non è altro che un file.py, è facile crearne uno
  
-miomodulo.py+miomodulo.py (di solito nella sotto-cartella "lib", può contenere una classe (con iniziale maiuscola)) 
 + 
 +<file python miomodulo.py>
  
-<file miomodulo.py> 
-class Pianeta: 
-    def __init__(self): 
-        self.name = 'pianeta' 
-                 
 def funzione(x, y): def funzione(x, y):
     return x + y     return x + y
Line 33: Line 46:
 </file> </file>
  
 +Un modulo è un oggetto e il valore dell'attributo %%__name__%% dipende da come si usa il modulo:
 Il test %%if __name__%% permette di fare due cose: Il test %%if __name__%% permette di fare due cose:
-  * importare il modulo e usare le sue funzioni a richiesta +  * importare il modulo e usare le sue funzioni a richiesta (quando %%__name__%% vale "miomodulo") 
-  * importare il modulo ed eseguire direttamente il suo contenuto (main)+  * eseguire direttamente il file miomodulo.py come un programma (quando %%__name__%% vale "main") 
 + 
 +Come in linguaggio C, anche in Python, in alto si definiscono le funzioni e poi si eseguono le eventuali istruzioni 
 + 
 + 
 + 
 +===Approfondimento su python-tk=== 
 + 
 +Installando python-tk diventa disponibile una interfaccia per usare Tk . Infatti **Tk inter** sta per interfaccia 
 + 
 +https://packages.debian.org/bullseye/tk 
 + 
 +  Tk is a cross-platform graphical toolkit 
 + 
 + 
 + 
 +Tk non fa parte di python, per questo è necessaria un'interfaccia 
 + 
 + 
appunti3s/modulo_python.1593965453.txt.gz · Last modified: 2020/07/05 18:10 by profpro