Profilo di Confuso83

Nome Confuso83
Indirizzo email n/a
Messaggi9
  • Capire quando usare la parola chiave "global"
    Forum >> Principianti
    Salve a tutti,



    Sono alle prese con le funzioni, namespace, ecc. e ho una domanda di chiarimento sull'uso di "global".

    Ho compreso che le variabili all'interno di una funzione sono variabili private e locali e non utilizzabili al di fuori della funzione stessa. Caveat: se la funzione ha un "return" allora si puo' associare il valore di una variabile interna ad una variabile esterna e globale, penso....




    -- Le variabili globali sono tutte le variabili definite nel programma principale e fuori dalle funzioni.

    -- Le variabili globali sono utilizzabili ovunque, anche dentro le funzioni.




    La parola chiave "global" si usa quando: esistono una variabile globale esterna ed una variabile locale che hanno lo stesso nome e si vuole usare o modificare la variabile globale esterna all'interno della funzione stessa.

    N.B. una variable globale esterna puo essere usata da una funzione per calcoli, ecc. ma non si puo' avere la variabile globale direttamente all'interno della funzione, direi, a meno che non si usi "global".




    Grazie!

    Confuso83



  • Re: IDE Jupyter notebook - come funziona
    Forum >> Programmazione Python >> IDE ed Editor
    GRAZIE!!!
  • Re: IDE Jupyter notebook - come funziona
    Forum >> Programmazione Python >> IDE ed Editor
    Grazie RicPol! Troppo gentile :)



    "...potresti tranquillamente installarlo con Pip in una distribuzione di Python "normale"...."

    Quale altra distribuzione avresti installato invece di Anaconda? So che e' possibile installare anche jupyter da solo senza alcuna distribuzione.


    "...Se hai Anaconda, allora dentro ci trovi anche sia la shell Ipython, sia Jupyter..."

    Quindi installare Anaconda equivale ad avere due shell diverse. Quella che chiami shell e' l'interprete Python? Shell e interprete sono sinonimi? Jupyter parla di kernel che penso sia la stessa cosa dell'interprete.




    Grazie!!!



  • IDE Jupyter notebook - come funziona
    Forum >> Programmazione Python >> IDE ed Editor
    Salve a tutti,

    Ho scaricato la distro Anaconda che include molte cose: l'interprete Python, tanti moduli e librerie e l' IDE Jupyter Notebook. Da quanto ho capito, Jupyter Notebook e' una IDE che usa il web browser come interfaccia. I notebook sono file JSON che vengono tradotti in .py dalla kernel.

    Scaricare Jupyter significa scaricare:


    a) Una kernel Python

    b) Una componente software server

    c) Una componente scritta in JS che interagisce con il nostro browser


    Ho capito correttamente? Il browser comunica con il server che a sua volta comunica con la kernel.

    La kernel sarebbe l'interprete Python o e' qualcosa di piu'?

    La kernel di Jupyter e' lo stesso interprete Python che Anaconda utilizza o si tratta di due interpreti diversi?


    Grazie e saluti,

    Federico


    --- Ultima modifica di Confuso83 in data 2021-09-12 17:47:59 ---
  • Usare pip correttamente in Windows e Mac
    Forum >> Principianti
    Salve a tutti,

    Uso Windows ma mi capita spesso di usare anche il Mac e vorrei capire se i comandi che ho elencato sotto sono effettivamente corretti per installare moduli in Python usando pip visto che a volte funzionano e a volte no. Per Mac, ho letto che sarebbe utile installare Homebrew ma non ho ancora capito di cosa si tratta...

    Grazie!

    Windows
    per verificare se pip e' installato: python --version


    se si dovesse installare pip: python -m ensurepip --default-pip



    per aggiornare pip: python -m pip install -U pip



    per installare un modulo o package: pip install <module_name> oppure python -m pip install <module_name> (che differenza c'e' fra i due comandi?)


    Mac o Linux
    per verificare se pip e' installato: python3 --version (perche' Python3 e non solo python?)

    se si dovesse installare pip: sudo easy_install pip

    per aggiornare pip: pip install -U pip

    per installare un modulo o package : pip install <module-name> oppure python -m pip install <module_name>






    --- Ultima modifica di Confuso83 in data 2021-02-19 14:43:13 ---


    --- Ultima modifica di Confuso83 in data 2021-02-19 14:44:25 ---
  • Metodi Speciali - cosa sono?
    Forum >> Principianti
    Salve a tutti,
    Sto cercando di capire esattamente cosa sono i metodi speciali. Prima di tutti sono metodi, cioe' funzioni definite all'interno di una classe (almeno cosi' la vedo).

    In Python ci sono tante parole risevate (keywords) e funzioni built-in (come print(), add(), type(), ecc).

    Questi metodi speciali sono metodi "predefiniti" che possono essere usati all'interno di una classe che si definisce ed appartengono a classi predefinite internamente a Python. Ho capito correttamente? Questo perche' i metodi speciali sono essenzialmente invocati implicitamente quando si usano le funzioni built-in.

    Ma a cosa servono essattamente all'interno di una classe? Per esempio, __init__ puo' essere usato o meno dentro una classe. Se non si include __init__, penso che il metodo venga comunque invocato indirettamente?

    Ecco alcuni esempi: __main__ , __str__ , __new__




    Grazie,

    Confuso83
  • Metodi Speciali - cosa sono?
    Forum >> Principianti
    Salve a tutti,
    Sto cercando di capire esattamente cosa sono i metodi speciali. Prima di tutti sono metodi, cioe' funzioni definite all'interno di una classe (almeno cosi' la vedo).

    In Python ci sono tante parole risevate (keywords) e funzioni built-in (come print(), add(), type(), ecc).

    Questi metodi speciali sono metodi "predefiniti" che possono essere usati all'interno di una classe che si definisce ed appartengono a classi predefinite internamente a Python. Ho capito correttamente? Questo perche' i metodi speciali sono essenzialmente invocati implicitamente quando si usano le funzioni built-in.

    Ma a cosa servono essattamente all'interno di una classe? Per esempio, __init__ puo' essere usato o meno dentro una classe. Se non si include __init__, penso che il metodo venga comunque invocato indirettamente?

    Ecco alcuni esempi: __main__ , __str__ , __new__




    Grazie,

    Confuso83
  • Re: In Python tutto e' un oggetto...
    Forum >> Principianti
    Grazie!!! Tutto piu' limpido.

    Quindi tutto e' trattato e chiamato ""oggetto" in Python.

    Sarebbe pero' sbagliato dire che Python e la programmazione ad oggetti OOP sono intimamente collegati e pensare che OOP e' "incorporato" in Python: si puo' programmare in Python anche senza fare OOP, direi, anche se la terminologia oggetto, metodo,classe, tipica di OOP, rimane parte della struttura interna di Python. Ci sono altro paio di argomenti che mi tormentano. Faro' un post separato...


    Grazie!

    Confuso83
  • In Python tutto e' un oggetto...
    Forum >> Principianti
    Salve a tutti,
    Sono un neofita alla ricerca di un chiarimento sulla seguente domanda:

    Python e' un linguaggio di programmazione in cui ogni entita' (lista, classe, funzione, metodo, variabile, che altro?) e' un definita come un oggetto: attraverso la funzione type() si riscontra che le varie entita' sono oggetti derivanti da una certa classe. Inoltre esistono metodi built-in predefiniti (oggetti anch'essi) da applicare ai vari oggetti.


    Ma il termine "oggetto" usato sopra non e' esattamente quello che si intende quando si parla di programmazione ad oggetti (OOP), direi. Un linguaggio di programmazione, Python in questo caso, e' indipendente dal paradigma di programmazione (funzionale, procedurale, OOP, ecc.). Quindi, nel caso di Python, il paradigma OOP non e' intrinseco a Python eppure sempra che la struttura di ogni cosa in Python sia un oggetto cosi' come predica OOP...

    Avreste qualche parola di chiarimento in merito a questa confusione fra oggetti di Python e oggetti di OOP?


    Grazie!