Come configurare smartphone e PC. Portale informativo

Comandi di base del linguaggio di programmazione Python. Una breve panoramica del linguaggio Python

Una volta, in un forum chiuso, ho provato a insegnare Python. In generale, lì le cose si sono bloccate. Mi è dispiaciuto per le lezioni scritte e ho deciso di pubblicarle al grande pubblico. Finora il primo, il più semplice. Quello che succede dopo è più interessante, ma forse non lo sarà. In generale, questo post sarà un fumetto di prova, se ti piace lo pubblicherò ulteriormente.

Python per principianti. Primo capitolo. "Di cosa stiamo parlando"

Per ogni evenienza, un po' di noiosa “evangelizzazione”. Se sei stanco di lui, puoi saltare qualche paragrafo.
Python (pronunciato "Python" anziché "python") è un linguaggio di scripting sviluppato da Guido van Rossum come linguaggio semplice e facile da imparare per i principianti.
Al giorno d'oggi, Python è un linguaggio ampiamente utilizzato che viene utilizzato in molte aree:
- Sviluppo di software applicativo (ad esempio, utilità Linux yum, pirut, system-config-*, client IM Gajim e molti altri)
- Sviluppo di applicazioni web (il più potente application server Zope e il CMS Plone sviluppato sulla sua base, su cui, ad esempio, opera il sito web della CIA, e molti framework per lo sviluppo rapido di applicazioni Plones, Django, TurboGears e molti altri)
- Utilizzo come linguaggio di scripting incorporato in molti giochi e non solo (nella suite per ufficio OpenOffice.org, nell'editor 3d Blender, nel DBMS Postgre)
- Utilizzo nei calcoli scientifici (con i pacchetti SciPy e numPy per i calcoli e PyPlot per disegnare grafici, Python diventa quasi paragonabile a pacchetti come MatLab)

E questo, ovviamente, non è un elenco completo di progetti che utilizzano questo meraviglioso linguaggio.

1. L'interprete stesso, puoi trovarlo qui (http://python.org/download/).
2. Ambiente di sviluppo. Non è necessario cominciare e IDLE incluso nella distribuzione è adatto a un principiante, ma per progetti seri serve qualcosa di più serio.
Per Windows utilizzo il meraviglioso e leggero PyScripter (http://tinyurl.com/5jc63t), per Linux - Komodo IDE.

Anche se per la prima lezione sarà sufficiente solo la shell interattiva di Python.

Basta eseguire python.exe. Il prompt di input non impiegherà molto tempo ad apparire, assomiglia a questo:

Puoi anche scrivere programmi su file con estensione py nel tuo editor di testo preferito, che non aggiunge i propri caratteri di markup al testo (nessuna parola non funzionerà). È anche auspicabile che questo editor sia in grado di creare "tabulazioni intelligenti" e non sostituire gli spazi con le tabulazioni.
Per avviare i file per l'esecuzione, è possibile fare doppio clic su di essi. Se la finestra della console si chiude troppo velocemente, inserisci la seguente riga alla fine del programma:

Quindi l'interprete aspetterà che tu prema Invio alla fine del programma.

Oppure associa i file py in Far con Python e aprili premendo invio.

Infine, puoi utilizzare uno dei tanti comodi IDE per Python, che forniscono funzionalità di debug, evidenziazione della sintassi e molte altre “comodità”.

Una piccola teoria.

Per cominciare, Python è un linguaggio fortemente tipizzato dinamicamente. Cosa significa questo?

Esistono linguaggi con tipizzazione forte (pascal, java, c, ecc.), in cui il tipo di una variabile è determinato in anticipo e non può essere modificato, e ci sono linguaggi con tipizzazione dinamica (python, ruby, vb ), in cui il tipo di una variabile viene interpretato in funzione del valore assegnato.
Le lingue tipizzate dinamicamente possono essere divise in altri 2 tipi. Quelli rigorosi, che non consentono la conversione di tipo implicita (Python), e quelli sciolti, che eseguono conversioni di tipo implicite (ad esempio, VB, in cui puoi facilmente aggiungere la stringa "123" e il numero 456).
Avendo affrontato la classificazione di Python, proviamo a “giocare” un po’ con l’interprete.

>>> a = b = 1 >>> a, b (1, 1) >>> b = 2 >>> a, b (1, 2) >>> a, b = b, a >>> a , b (2, 1)

Vediamo quindi che l'assegnazione viene eseguita utilizzando il segno =. È possibile assegnare un valore a più variabili contemporaneamente. Quando specifichi un nome di variabile all'interprete in modo interattivo, ne stampa il valore.

La prossima cosa che devi sapere è come sono costruite le unità algoritmiche di base: rami e cicli. Per cominciare, è necessario un piccolo aiuto. Python non ha un delimitatore speciale per i blocchi di codice; il rientro funge da loro ruolo. Cioè, ciò che è scritto con la stessa indentazione è un blocco di comandi. All'inizio questo può sembrare strano, ma dopo un po' di abituarsi ci si rende conto che questa misura “forzata” permette di ottenere un codice molto leggibile.
Quindi le condizioni.

La condizione viene specificata utilizzando un'istruzione if che termina con ":". Le condizioni alternative che verranno soddisfatte se il primo controllo fallisce sono specificate dall'operatore elif. Infine, else specifica un ramo che verrà eseguito se nessuna delle condizioni viene soddisfatta.
Si noti che dopo aver digitato if, l'interprete utilizza il prompt "..." per indicare che è in attesa di ulteriori input. Per dirgli che abbiamo finito, dobbiamo inserire una riga vuota.

(L'esempio con i rami per qualche motivo interrompe il markup sull'hub, nonostante i balli con i tag pre e code. Mi scuso per l'inconveniente, l'ho lanciato qui pastebin.com/f66af97ba, se qualcuno mi dice cosa c'è che non va, lo farò sii molto grato)

Cicli.

Il caso più semplice di ciclo è il ciclo while. Prende una condizione come parametro e viene eseguita finché è vera.
Ecco un piccolo esempio.

>>> x = 0 >>> mentre x<=10: ... print x ... x += 1 ... 0 1 2 ........... 10

Tieni presente che poiché sia ​​print x che x+=1 sono scritti con la stessa indentazione, sono considerati il ​​corpo del ciclo (ricordi cosa ho detto sui blocchi? ;-)).

Il secondo tipo di ciclo in Python è il ciclo for. È simile al ciclo foreach in altre lingue. La sua sintassi è più o meno la seguente.

Per la variabile nell'elenco:
squadre

Tutti i valori della lista verranno assegnati a loro volta alla variabile (in effetti può esserci non solo una lista, ma anche qualsiasi altro iteratore, ma per ora non preoccupiamoci di questo).

Ecco un semplice esempio. L'elenco sarà una stringa, che non è altro che un elenco di caratteri.

>>> x = "Ciao, Python!" >>> for carattere in x: ... print carattere ... H e l ........... !

In questo modo possiamo scomporre la stringa in caratteri.
Cosa fare se abbiamo bisogno di un ciclo che si ripeta un certo numero di volte? È molto semplice, la funzione range verrà in soccorso.

In input prende da uno a tre parametri, in output restituisce una lista di numeri che possiamo “scorrere” con l'operatore for.

Ecco alcuni esempi di utilizzo della funzione range che spiegano il ruolo dei suoi parametri.

>>> intervallo(10) >>> intervallo(2, 12) >>> intervallo(2, 12, 3) >>> intervallo(12, 2, -2)

E un piccolo esempio con un ciclo.

>>> for x in range(10): ... print x ... 0 1 2 ..... 9

Input Output

L'ultima cosa che dovresti sapere prima di iniziare a utilizzare completamente Python è come viene eseguito l'input-output al suo interno.

Per l'output viene utilizzato il comando print, che stampa tutti i suoi argomenti in formato leggibile dall'uomo.

Per l'input da console, viene utilizzata la funzione raw_input(prompt), che visualizza un prompt e attende l'input dell'utente, restituendo ciò che l'utente ha inserito come valore.

X = int(raw_input("Inserisci un numero:")) print "Il quadrato di questo numero è ", x * x

Attenzione! Nonostante esista la funzione input() con un'azione simile, non è consigliabile utilizzarla nei programmi, poiché l'interprete tenta di eseguire le espressioni sintattiche immesse utilizzandola, il che costituisce una grave falla nella sicurezza del programma.

Per la prima lezione è tutto.

Compiti a casa.

1. Crea un programma per calcolare l'ipotenusa di un triangolo rettangolo. La lunghezza delle gambe è richiesta dall'utente.
2. Creare un programma per trovare le radici di un'equazione quadratica in forma generale. I coefficienti vengono richiesti all'utente.
3. Creare un programma per visualizzare una tabella di moltiplicazione in base al numero M. La tabella viene compilata da M * a, a M * b, dove M, a, b sono richiesti dall'utente. L'output dovrebbe essere eseguito in una colonna, un esempio per riga nel seguente formato (ad esempio):
5 x 4 = 20
5 x 5 = 25
E così via.

Il programma è un insieme di algoritmi che garantiscono che vengano eseguite le azioni necessarie. Convenzionalmente, una persona comune può essere programmata allo stesso modo scrivendo comandi precisi in modo che, ad esempio, prepari il tè. Se quest'ultima opzione utilizza il linguaggio naturale (russo, ucraino, inglese, coreano, ecc.), il computer avrà bisogno di un linguaggio di programmazione speciale. Python è uno di questi. L'ambiente di programmazione tradurrà successivamente i comandi e verrà raggiunto l'obiettivo umano per cui è stato creato l'algoritmo. Python ha una propria sintassi, che verrà discussa di seguito.

Storia della lingua

Lo sviluppo è iniziato negli anni '80 e si è concluso nel 1991. Il linguaggio Python è stato creato da Guido van Rossum. Sebbene il simbolo principale di Python sia un serpente, prende il nome dalla commedia americana.

Durante la creazione del linguaggio, lo sviluppatore ha utilizzato alcuni comandi presi in prestito dagli esistenti Pascal, C e C++. Dopo che la prima versione ufficiale è stata messa online, un intero gruppo di programmatori si è unito per perfezionarla e migliorarla.

Uno dei fattori che hanno permesso a Python di diventare piuttosto famoso è il suo design. È riconosciuto da molti specialisti di grande successo come uno dei migliori.

Caratteristiche di Python

Il linguaggio di programmazione Python sarà un ottimo insegnante per i principianti. Ha una sintassi abbastanza semplice. Sarà facile capire il codice, perché non include molti elementi ausiliari e la struttura speciale del linguaggio ti insegnerà come indentare. Naturalmente un programma ben progettato con un numero limitato di comandi risulterà immediatamente comprensibile.

Molti sistemi sintattici sono stati creati utilizzando la programmazione orientata agli oggetti. Python non fa eccezione. Perché è nato esattamente? Renderà più facile l'apprendimento per i principianti e aiuterà i dipendenti già qualificati a ricordare alcuni elementi.

Sintassi del linguaggio

Come già accennato, il codice è abbastanza facile e semplice da leggere. Python ha comandi sequenziali precisi nell'esecuzione. In linea di principio, gli operatori utilizzati non sembreranno difficili nemmeno ai principianti. Questo è ciò che rende Python diverso. La sua sintassi è facile e semplice.

Operatori tradizionali:

  • Quando imposti una condizione, dovresti usare il costrutto if-else. Se ci sono troppe righe di questo tipo, puoi inserire il comando elif.
  • La lezione serve per comprendere la classe.
  • Uno degli operatori semplici è pass. Non fa nulla, si adatta a blocchi vuoti.
  • I comandi ciclici sono while e for.
  • La funzione, il metodo e il generatore sono definiti grazie a def.

Oltre alle singole parole, il linguaggio di programmazione Python consente di utilizzare le espressioni come operatori. Utilizzando le catene di stringhe è possibile ridurre il numero di comandi e parentesi separati. Vengono utilizzati anche i cosiddetti calcoli pigri, cioè quelli che vengono eseguiti solo quando la condizione lo richiede. Questi includono e e o.

Processo di scrittura del programma

L'interprete funziona secondo un unico meccanismo: quando scrivi una riga (dopo di che inserisci "Invio"), viene immediatamente eseguita e una persona può già vedere qualche risultato. Questo sarà abbastanza utile e conveniente per i principianti o per coloro che vogliono testare un piccolo pezzo di codice. Negli ambienti compilati, dovresti prima scrivere l'intero programma, solo dopo eseguirlo e verificare la presenza di errori.

Il linguaggio di programmazione Python (per i principianti, come è già diventato chiaro, è l'ideale) nel sistema operativo Linux consente di lavorare direttamente nella console stessa. Dovresti scrivere il nome del codice Python in inglese sulla riga di comando. Non sarà difficile creare il tuo primo programma. Prima di tutto, vale la pena considerare che l'interprete può essere utilizzato qui come calcolatrice. Poiché gli specialisti giovani e alle prime armi spesso non si sentono a proprio agio con la sintassi, puoi scrivere l'algoritmo in questo modo:

Dopo ogni riga devi inserire "Invio". La risposta verrà visualizzata immediatamente dopo aver fatto clic su di essa.

Dati utilizzati da Python

I dati utilizzati dai computer (e dai linguaggi di programmazione) sono di diversi tipi, e questo è abbastanza ovvio. I numeri possono essere frazionari, interi, costituiti da molte cifre o essere piuttosto massicci a causa della parte frazionaria. Per facilitare il lavoro dell'interprete con loro e per fargli capire di cosa si tratta, è necessario specificare una tipologia specifica. Inoltre, è necessario che i numeri si adattino alla cella di memoria allocata.

I tipi di dati più comuni utilizzati dal linguaggio di programmazione Python sono:

  • Numero intero. Stiamo parlando di numeri interi che hanno sia valori negativi che positivi. Anche lo zero è incluso in questa tipologia.
  • Affinché l'interprete capisca che sta lavorando con parti frazionarie, il tipo dovrebbe essere impostato su virgola mobile. Di norma, viene utilizzato quando si utilizzano numeri con un punto variabile. Va ricordato che quando si scrive un programma è necessario attenersi alla notazione “3.25” e non utilizzare la virgola “3.25”.
  • Nel caso di aggiunta di stringhe, il linguaggio di programmazione Python consente di aggiungere un tipo di stringa. Spesso le parole o le frasi sono racchiuse in singoli o

Svantaggi e vantaggi

Negli ultimi decenni, le persone sono state più interessate a dedicare più tempo alla gestione dei dati e meno tempo alla loro elaborazione da parte dei computer. Il linguaggio in cui ci sono solo cose positive è il codice più alto.

Python non ha praticamente alcuno svantaggio. L'unico grave svantaggio è la lentezza dell'esecuzione dell'algoritmo. Sì, se lo confronti con "C" o "Java", francamente è una tartaruga. Ciò è spiegato dal fatto che questo

Lo sviluppatore si è assicurato di aggiungere le cose migliori a Python. Pertanto, quando lo si utilizza, si può notare che ha assorbito le migliori caratteristiche di altri linguaggi di programmazione superiori.

Nel caso in cui l'idea implementata dall'interprete non sia impressionante, sarà possibile capirla quasi immediatamente, dopo aver scritto diverse dozzine di righe. Se il programma è utile, la parte critica può essere migliorata in qualsiasi momento.

Attualmente, più di un gruppo di programmatori sta lavorando per migliorare Python, quindi non è un dato di fatto che il codice scritto in C++ sarà migliore di quello creato utilizzando Python.

Con quale versione è meglio lavorare?

Al giorno d'oggi, sono ampiamente utilizzate due versioni di un sistema sintattico come il linguaggio Python. Per i principianti, scegliere tra loro sarà piuttosto difficile. Va notato che la 3.x è ancora in fase di sviluppo (sebbene rilasciata al pubblico), mentre la 2.x è una versione completamente completata. Molte persone consigliano di utilizzare 2.7.8, poiché praticamente non rallenta né si blocca. Nella versione 3.x non ci sono cambiamenti radicali, quindi puoi trasferire il tuo codice nell'ambiente di programmazione in qualsiasi momento con un aggiornamento. Per scaricare il programma necessario, dovresti andare sul sito ufficiale, selezionare il tuo sistema operativo e attendere il completamento del download.

Quanti linguaggi di programmazione esistono realmente? Ce ne sono diverse dozzine. Sono progettati per vari compiti, per ogni gusto, dimensione e colore. Perché ho scelto questa particolare lingua? Python è in grado di eseguire una gamma molto ampia di attività, che vanno da un semplice script alla creazione di interi siti Web. Python per principianti è abbastanza semplice, conciso e facile da imparare.

Da questo articolo imparerai:

Ciao Ciao! Gridin Semyon è in contatto. Alla fine sono arrivato all'argomento principale di questo blog, programmare sistemi intelligenti utilizzando Python. Mi sto preparando per questo da molto tempo. E ora sono pronto a scriverti articoli interessanti e ad approfondire questo argomento.

Perché ne ho bisogno? Per cominciare, mi sono posto il seguente compito sullo sviluppo dell'apprendimento automatico e della visione artificiale.

Forse, se sono fortunato, finirò tra gli sviluppatori di progetti robotici complessi, forse diventerò io stesso un organizzatore e aprirò la produzione di robot personali, o forse, forse... Se niente funziona, e Dio Dio lo benedica, mi piace il processo, non il risultato.

Poi inizierò la mia storia))...

Caratteristiche del linguaggio di programmazione Python

Come ho scritto sopra, questo linguaggio svolge una gamma molto ampia di funzioni. È semplicemente impossibile coprire tutto. Pertanto, prima di studiare, poniti la domanda: perché ne ho bisogno? Quali problemi risolverò utilizzando questo linguaggio? Se hai risposto positivamente, vai avanti.

Come può essere utile Python?

  1. Lavorare con file xml/html
  2. Lavorare con le richieste http
  3. GUI (interfaccia grafica)
  4. Creazione di script web
  5. Lavorare con FTP
  6. Lavorare con immagini, file audio e video
  7. Robotica (uso di computer a scheda singola)
  8. Programmazione informatica matematica e scientifica

Eccetera. Python è in grado di eseguire la maggior parte delle attività di routine.

In Python puoi creare backup, lavorare con le email, una semplice calcolatrice e uno script per un sito web. La lingua non è limitata da nulla. La cosa più interessante è che viene utilizzato da giganti dell’IT come Google e Yandex.

In questo articolo ti guideremo attraverso la programmazione Python da zero.

Affinché il programma funzioni su un dispositivo specifico, non importa quale sia il sistema operativo: Windows, Linux, RaspbianOS, MacOS. È importante avere un interprete che capisca i comandi e li esegua.

Effettuare le seguenti operazioni: scaricare l'IDE Python c fonte ufficiale.

Conoscere l'interprete

Quindi l'interprete elabora il codice testuale del programma. Esiste una modalità di ambiente di sviluppo interattivo. Puoi eseguirlo in diversi modi:

  1. Da una normale riga di comando cmd, inserisci il comando python ;
  2. Dal desktop (scorciatoia);
  3. Utilizzando il menu Start - Python IDLE;

Ti si aprirà questa finestra:

A proposito, la shell può essere utilizzata anche come normale calcolatrice. Vedo questo software come un'opportunità per sbloccare tutto il potenziale dei computer a scheda singola.

Arduino ha anche una propria shell software. Leggilo.

Da dove iniziare a imparare Python? Proviamo a scrivere il primo programma?

Creazione del primo programma

Un programma Python è un file di testo semplice con codice scritto. L'estensione di questo file è .py. È possibile eseguire il programma specificando il nome appropriato sulla riga di comando. Scriviamo il programma standard più semplice “Hello world!”

Il compito è visualizzare "Hello world!" sullo schermo. Avvia Blocco note.

Scriviamo il seguente codice:

Pitone

print("Ciao mondo!!!")

print("Ciao mondo!!!" )

E salvalo in una cartella seguendo il percorso C:\MyScripts. Consiglio di inserire tutti i progetti in questa cartella.

Per consentirci di eseguire lo script, seleziona la riga di comando e inserisci il percorso del tuo file:

A proposito di libri. In effetti, sebbene il linguaggio sia semplice in termini di creazione del codice, ci sono molte sfumature e varie librerie per l'implementazione di una vasta gamma di attività.

Il miglior libro su Python per principianti è considerato il tutorial di Mike McGrath. Una guida completa per scrivere codice Python.

Ci scusiamo per la qualità della foto, non funziona in nessun altro modo. Non consiglio ancora di acquistare gli altri libri, poiché effettivamente sono voluminosi e ingombranti. McGrath sarà sufficiente come base.

Ragazzi per me è tutto, se avete domande potete sempre scrivermi. Iscriviti alle notizie del blog. Invialo ai tuoi amici. Grazie per l'attenzione.

Cordiali saluti, Gridin Semyon

Questo materiale è destinato a coloro che hanno già familiarità con la programmazione e desiderano padroneggiare il linguaggio di programmazione Python. È progettato per mostrarti in 10 minuti le funzionalità del linguaggio Python, le funzionalità della sintassi e i principi di base per lavorare con Python utilizzando esempi. Non c'è "acqua" qui - informazioni che non sono direttamente correlate al linguaggio di programmazione. Cominciamo!

Il linguaggio di programmazione Python si distingue per la tipizzazione forte (la tipizzazione forte si distingue per il fatto che il linguaggio non consente di mescolare tipi diversi nelle espressioni e non esegue conversioni implicite automatiche, ad esempio non è possibile sottrarre un set da una stringa), dinamica viene utilizzata la digitazione: tutti i tipi vengono rilevati durante l'esecuzione del programma.

La dichiarazione delle variabili è facoltativa, i nomi fanno distinzione tra maiuscole e minuscole (var e VAR sono due variabili diverse).

Python è un linguaggio orientato agli oggetti; tutto nel linguaggio è un oggetto.

Ottenere aiuto

L'aiuto (aiuto) in Python è sempre disponibile direttamente nell'interprete. Se vuoi sapere come funziona un oggetto, chiama help( ). Un'altra istruzione utile è dir() , che mostra tutti i metodi di un oggetto e le proprietà degli oggetti .__doc__ che ti mostrerà la docstring:

>>> help(5) Aiuto sull'oggetto int: (etc etc) >>> dir(5) ["__abs__", "__add__", ...] >>> abs.__doc__ "abs(number) -> number Restituisce il valore assoluto dell'argomento."

Sintassi Python

Python non dispone di costrutti per terminare i blocchi (come dichiarazioni di classi o funzioni, ad esempio): i blocchi vengono definiti utilizzando il rientro. Aumenta il rientro all'inizio del blocco, diminuiscilo alla fine del blocco. Le istruzioni che richiedono il rientro terminano con i due punti (:). Se non disponi ancora di codice dopo l'istruzione di inizio blocco, inserisci un'istruzione pass per superare il controllo della sintassi.

Mentre rangelist == 1: pass

I commenti su riga singola iniziano con un carattere cancelletto (#), mentre i commenti su più righe utilizzano (""") all'inizio e alla fine del commento.

I valori vengono assegnati utilizzando il segno uguale (“=”) (gli oggetti vengono effettivamente nominati nel processo).

Il test di differenza viene eseguito con due simboli uguali ("==").

È possibile aumentare un valore utilizzando l'operatore += e diminuirlo con -= specificando una variabile sul lato sinistro e il valore in base al quale avverrà l'aumento/decremento sulla destra. Funziona con molti tipi di dati in Python, incluse le stringhe.

È possibile assegnare un valore a più variabili sulla stessa riga. Esempi:

>>> miavar = 3 >>> miavar += 2 >>> miavar 5 >>> miavar -= 1 >>> miavar 4 """Questo è un commento su più righe. Le righe seguenti concatenano le due stringhe.""" >>> miastringa = "Ciao" >>> miastringa += "mondo." >>> stampa la mia stringa Ciao mondo. # Questo scambia le variabili in una riga(!). # Non viola la digitazione forte perché i valori non vengono # effettivamente assegnati, ma i nuovi oggetti sono # associati ai vecchi nomi. >>> miavar, miastringa = miastringa, miavar

Tipi di dati in Python

Python fornisce tipi di dati come elenchi, tuple e dizionari. Sono disponibili anche i set, utilizzando il modulo sets nelle versioni precedenti a Python 2.5 e integrato nel linguaggio nelle versioni successive.

Gli elenchi sono simili agli array unidimensionali. È possibile avere un elenco composto da altri elenchi.

I dizionari sono array associativi in ​​cui si accede ai dati tramite chiave.

Le tuple sono array unidimensionali immutabili.

Gli "array" in Python possono essere di qualsiasi tipo, il che significa che puoi combinare numeri, stringhe e altri tipi di dati in elenchi/dizionari/tuple.

L'indice del primo elemento è 0. Un valore di indice negativo inizia a contare dall'ultimo al primo, [-1] punterà all'ultimo elemento.

Le variabili possono puntare a funzioni.

>>> sample = , ("a", "tuple")] >>> mialista = ["Elenca voce 1", 2, 3.14] >>> mialista = "Elenca di nuovo voce 1" # Stiamo cambiando l'elemento . >>> mialista[-1] = 3.21 # Qui ci riferiamo all'ultimo elemento. >>> miadizione = ("Chiave 1": "Valore 1", 2: 3, "pi": 3.14) >>> miodetto["pi"] = 3.15 # Ecco come modificare i valori del dizionario. >>> miatupla = (1, 2, 3) >>> miafunzione = len >>> print miafunzione(mialista) 3

Puoi ottenere una porzione di un array (lista o tupla) utilizzando i due punti (:). Lasciare vuoto il valore dell'indice iniziale indicherà di iniziare dal primo valore; lasciare vuoto il valore dell'indice finale indicherà l'ultimo elemento dell'array. Gli indici negativi vengono contati all'indietro a partire dalla fine dell'array (-1 punterà all'ultimo elemento).

Guarda gli esempi:

>>> mialista = ["Voce lista 1", 2, 3.14] >>> print mialista[:] ["Voce lista 1", 2, 3.14000000000000001] >>> print mialista ["Voce lista 1", 2] > >> print mialista[-3:-1] ["Elemento 1", 2] >>> print mialista # Aggiungendo un terzo parametro, "step" avrà un passo Python in # N incrementi di elementi, anziché 1. # E.g. , questo restituirà il primo elemento, quindi andrà al terzo e # lo restituirà (quindi, gli elementi 0 e 2 nell'indicizzazione 0). >>> print mialista[::2] ["Voce elenco 1", 3.14]

Stringhe in Python

Per denotare una stringa è possibile utilizzare un apostrofo (') o virgolette doppie (virgolette doppie - "). Ciò consente di inserire virgolette all'interno di una stringa indicate da apostrofi (ad esempio, "Ha detto "ciao."" è una stringa valida).

Le stringhe su più righe sono indicate utilizzando un triplo apostrofo o virgolette ("""). Python supporta unicode immediatamente. Tuttavia, la seconda versione di Python utilizza il carattere (u) per denotare una stringa contenente unicode: u"This is una stringa Unicode." Python3 tutte le stringhe contengono Unicode. Se in Python3 hai bisogno di una sequenza di byte, che nelle versioni precedenti era essenzialmente una stringa, viene utilizzato il simbolo (b): b"Questa è una stringa di byte".

Per sostituire i valori dei parametri in una stringa, utilizzare l'operatore (%) e una tupla. Ogni %s viene sostituito da un elemento della tupla, da sinistra a destra. Puoi anche utilizzare un dizionario per sostituire i parametri con nome:

>>>print "Nome: %s\ Numero: %s\ Stringa: %s" % (myclass.name, 3, 3 * "-") Nome: Poromenos Numero: 3 Stringa: --- strString = """ Questa è una stringa su più righe.""" # ATTENZIONE: fare attenzione alle s finali in "%(key)s". >>> print "Questo %(verbo) è un %(sostantivo)s." % ("sostantivo": "test", "verbo": "è") Questo è un test.

Istruzioni per il controllo del flusso: se, per, mentre

Le istruzioni If, for e while vengono utilizzate per controllare l'ordine in cui viene eseguito un programma. In Python non esiste alcun interruttore o maiuscolo; al suo posto viene utilizzato if. For viene utilizzato per scorrere gli elementi di una lista (o tupla). Per ottenere una sequenza di numeri, utilizzare range( ). Per interrompere l'esecuzione di un ciclo si usa break.

La sintassi per questo costrutto è la seguente:

Rangelist = range(10) >>> stampa rangelist per numero in rangelist: # Controlla se numero è uno dei # numeri nella tupla. if numero in (3, 4, 7, 9): # "Break" termina un for senza # eseguire la clausola "else". break else: # "Continua" avvia la successiva iterazione # del ciclo. In questo caso è piuttosto inutile, # poiché è l'ultima istruzione del ciclo. continue else: # La clausola "else" è opzionale e viene # eseguita solo se il ciclo non si è "interrotto". pass # Non fa nulla se rangelist == 2: print "Il secondo elemento (le liste sono in base 0) è 2 " elif rangelist == 3: print "Il secondo elemento (le liste sono in base 0) è 3" else: print "Non so" while rangelist == 1: pass

Funzioni in Python

Le funzioni vengono dichiarate utilizzando la parola chiave "def". Gli argomenti facoltativi compaiono nella dichiarazione della funzione dopo quelli obbligatori e gli viene assegnato un valore predefinito. Quando si chiama una funzione, è possibile passare argomenti specificandone il nome e il valore, omettendo alcuni argomenti facoltativi o disponendoli in un ordine diverso da quello dichiarato nella funzione.

Le funzioni possono restituire una tupla e utilizzando l'unboxing della tupla è possibile restituire più valori.

Le funzioni Lambda sono funzioni speciali che elaborano un singolo argomento.

I parametri vengono passati tramite riferimento. Aggiungendo elementi alla lista passata riceverai una lista aggiornata fuori dalla funzione. In questo caso, assegnare un nuovo valore ai parametri all'interno di una funzione rimarrà un'azione locale. Poiché il passaggio trasferisce solo la posizione di memoria, l'assegnazione di un nuovo oggetto a un parametro come variabile causerà la creazione di un nuovo oggetto.

Esempi di codice:

# Come def funcvar(x): return x + 1 funcvar = lambda x: x + 1 >>> print funcvar(1) 2 # an_int e a_string sono opzionali, hanno valori predefiniti # se non ne viene passato uno ( 2 e "Una stringa predefinita", rispettivamente). def passaggio_esempio(a_list, an_int=2, a_string="Una stringa predefinita"): a_list.append("Un nuovo elemento") an_int = 4 return a_list, an_int, a_string >>> mia_lista = >>> mia_int = 10 >> > print passaggio_esempio(mia_lista, mio_int) (, 4, "Una stringa predefinita") >>> mia_lista >>> mia_int 10

Classi Python

Python supporta una forma limitata di ereditarietà multipla nelle classi.

Le variabili ed i metodi privati ​​possono essere dichiarati (per convenzione, questo non viene controllato dall'interprete) utilizzando due underscore all'inizio e non più di uno alla fine del nome (es: "__spam").

Possiamo anche assegnare nomi arbitrari alle istanze delle classi. Visualizza esempi:

Classe MiaClasse(oggetto): common = 10 def __init__(self): self.miavariabile = 3 def miafunzione(self, arg1, arg2): return self.miavariabile # Questa è l'istanziazione della classe >>> classinstance = MyClass() >> > istanzaclasse.miafunzione(1, 2) 3 # Questa variabile è condivisa da tutte le classi. >>> classinstance2 = MyClass() >>> classinstance.common 10 >>> classinstance2.common 10 # Nota come utilizziamo il nome della classe # invece dell'istanza. >>> MiaClasse.common = 30 >>> classinstance.common 30 >>> classinstance2.common 30 # Questo non aggiornerà la variabile sulla classe, # invece legherà un nuovo oggetto al vecchio # nome della variabile. >>> classeistanza.common = 10 >>> classeistanza.common 10 >>> classeistanza2.common 30 >>> MiaClasse.common = 50 # Questo non è cambiato, perché "comune" è # ora una variabile di istanza. >>> classinstance.common 10 >>> classinstance2.common 50 # Questa classe eredita da MiaClasse. La classe # dell'esempio precedente eredita da "oggetto", il che la rende # quella che viene chiamata una "classe di nuovo stile". # L'ereditarietà multipla è dichiarata come: # class AltraClasse(MiaClasse1, MiaClasse2, MiaClasseN) class AltraClasse(MiaClasse): # L'argomento "self" viene passato automaticamente # e si riferisce all'istanza della classe, quindi puoi impostare # variabili di istanza come sopra, ma dall'interno della classe. def __init__(self, arg1): self.miavariabile = 3 print arg1 >> > istanza di classe = AltraClass("ciao") ciao >>> istanza di classe.miafunzione(1, 2) 3 # Questa classe non ha un membro .test, ma # possiamo comunque aggiungerne uno all'istanza. Nota # che questo sarà solo un membro della classeistanza. >>> istanza.class.test = 10 >>> istanza.class.test 10

Eccezioni in Python

Le eccezioni in Python vengono gestite in blocchi try-eccetto:

Def some_function(): try: # La divisione per zero solleva un'eccezione 10 / 0 tranne ZeroDivisionError: print "Oops, non valido." else: # L'eccezione non si è verificata, tutto a posto. pass final: # Questo viene eseguito dopo che il blocco di codice è stato eseguito # e tutte le eccezioni sono state gestite, anche # se viene sollevata una nuova eccezione durante la gestione. print "Abbiamo finito con quella." >>> some_function() Spiacenti, non valido. Abbiamo finito con quella.

Importare moduli in Python

Le librerie esterne vengono utilizzate dopo l'importazione utilizzando la parola chiave import. Puoi anche utilizzare from import per importare funzioni personalizzate.

Importa casuale dall'ora importa orologio randomint = random.randint(1, 100) >>> stampa randomint 64

Lavorare con i file in Python

Python ha un gran numero di librerie per lavorare con i file. Ad esempio, la serializzazione (conversione dei dati in stringhe con la libreria pickle):

Import pickle mylist = ["Questo", "è", 4, 13327] # Apre il file C:\\binary.dat per la scrittura. La lettera r prima della stringa del nome file # viene utilizzata per impedire l'escape della barra rovesciata. miofile = open(r"C:\\binary.dat", "w") pickle.dump(mialista, miofile) miofile.close() miofile = open(r"C:\\text.txt", "w" ) miofile.write("Questa è una stringa di esempio") miofile.close() miofile = open(r"C:\\text.txt") >>> print miofile.read() "Questa è una stringa di esempio" miofile .close() # Apre il file per la lettura. miofile = open(r"C:\\binary.dat") lista caricata = pickle.load(miofile) miofile.close() >>> print lista caricata ["Questo", "è", 4, 13327]

Varie

  • Le condizioni possono restare unite, ad esempio 1< a < 3 проверит, что a одновременно меньше 3 и больше 1.
  • È possibile utilizzare del per rimuovere variabili o elementi negli array.
  • Gli elenchi forniscono funzionalità di manipolazione dei dati molto potenti. Puoi costruire un'espressione utilizzando le istruzioni for seguite da if o for:
>>> lst1 = >>> lst2 = >>> print >>> print # Controlla se una condizione è vera per qualche elemento. # "qualsiasi" restituisce vero se qualsiasi elemento nell'elenco è vero. >>> any()) True # Questo perché 4 % 3 = 1 e 1 è vero, quindi any() # restituisce True. # Controlla per quanti elementi una condizione è vera. >>> sum(1 for i in if i == 4) 2 >>> del lst1 >>> print lst1 >>> del lst1
  • Le variabili globali sono dichiarate all'esterno delle funzioni e possono essere lette senza dichiarazioni speciali all'interno, ma se vuoi scriverle, devi dichiarare from all'inizio della funzione usando la parola chiave speciale "global", altrimenti Python assegnerà il nuovo valore a la variabile locale:
numero = 5 def miafunzione(): # Verrà stampato 5. print numero def altrafunzione(): # Ciò solleva un'eccezione perché la variabile non è stata # vincolata prima della stampa. Python sa che un oggetto # verrà associato ad esso in seguito e crea un nuovo oggetto # locale invece di accedere a quello globale. print numero numero = 3 def yetanotherfunc(): numero globale # Questo cambierà correttamente il valore globale. numero = 3

Come imparare il linguaggio di programmazione Python

Questo materiale non vuole essere una guida completa a Python. Il linguaggio di programmazione Python ha un numero enorme di librerie e varie funzionalità con cui acquisirai familiarità continuando a lavorare con il linguaggio e studiando fonti aggiuntive.

Se le informazioni presentate non ti bastano, guarda il materiale esteso che descrive il linguaggio di programmazione Python: fornisce informazioni sul linguaggio in modo più dettagliato.

Tra gli altri materiali, consiglio Impara Python nel modo più duro. E, naturalmente, il Tutorial Python 2 e il Tutorial Python 3.

Mille grazie a Stavros Korokithakis per il suo eccellente tutorial “Impara Python in 10 minuti”.

Se vuoi migliorare qualcosa in questo materiale, scrivi nei commenti.

Una volta, in un forum chiuso, ho provato a insegnare Python. In generale, lì le cose si sono bloccate. Mi è dispiaciuto per le lezioni scritte e ho deciso di pubblicarle al grande pubblico. Finora il primo, il più semplice. Quello che succede dopo è più interessante, ma forse non lo sarà. In generale, questo post sarà un fumetto di prova, se ti piace lo pubblicherò ulteriormente.

Python per principianti. Primo capitolo. "Di cosa stiamo parlando"

Per ogni evenienza, un po' di noiosa “evangelizzazione”. Se sei stanco di lui, puoi saltare qualche paragrafo.
Python (pronunciato "Python" anziché "python") è un linguaggio di scripting sviluppato da Guido van Rossum come linguaggio semplice e facile da imparare per i principianti.
Al giorno d'oggi, Python è un linguaggio ampiamente utilizzato che viene utilizzato in molte aree:
- Sviluppo di software applicativo (ad esempio, utilità Linux yum, pirut, system-config-*, client IM Gajim e molti altri)
- Sviluppo di applicazioni web (il più potente application server Zope e il CMS Plone sviluppato sulla sua base, su cui, ad esempio, opera il sito web della CIA, e molti framework per lo sviluppo rapido di applicazioni Plones, Django, TurboGears e molti altri)
- Utilizzo come linguaggio di scripting incorporato in molti giochi e non solo (nella suite per ufficio OpenOffice.org, nell'editor 3d Blender, nel DBMS Postgre)
- Utilizzo nei calcoli scientifici (con i pacchetti SciPy e numPy per i calcoli e PyPlot per disegnare grafici, Python diventa quasi paragonabile a pacchetti come MatLab)

E questo, ovviamente, non è un elenco completo di progetti che utilizzano questo meraviglioso linguaggio.

1. L'interprete stesso, puoi trovarlo qui (http://python.org/download/).
2. Ambiente di sviluppo. Non è necessario cominciare e IDLE incluso nella distribuzione è adatto a un principiante, ma per progetti seri serve qualcosa di più serio.
Per Windows utilizzo il meraviglioso e leggero PyScripter (http://tinyurl.com/5jc63t), per Linux - Komodo IDE.

Anche se per la prima lezione sarà sufficiente solo la shell interattiva di Python.

Basta eseguire python.exe. Il prompt di input non impiegherà molto tempo ad apparire, assomiglia a questo:

Puoi anche scrivere programmi su file con estensione py nel tuo editor di testo preferito, che non aggiunge i propri caratteri di markup al testo (nessuna parola non funzionerà). È anche auspicabile che questo editor sia in grado di creare "tabulazioni intelligenti" e non sostituire gli spazi con le tabulazioni.
Per avviare i file per l'esecuzione, è possibile fare doppio clic su di essi. Se la finestra della console si chiude troppo velocemente, inserisci la seguente riga alla fine del programma:

Quindi l'interprete aspetterà che tu prema Invio alla fine del programma.

Oppure associa i file py in Far con Python e aprili premendo invio.

Infine, puoi utilizzare uno dei tanti comodi IDE per Python, che forniscono funzionalità di debug, evidenziazione della sintassi e molte altre “comodità”.

Una piccola teoria.

Per cominciare, Python è un linguaggio fortemente tipizzato dinamicamente. Cosa significa questo?

Esistono linguaggi con tipizzazione forte (pascal, java, c, ecc.), in cui il tipo di una variabile è determinato in anticipo e non può essere modificato, e ci sono linguaggi con tipizzazione dinamica (python, ruby, vb ), in cui il tipo di una variabile viene interpretato in funzione del valore assegnato.
Le lingue tipizzate dinamicamente possono essere divise in altri 2 tipi. Quelli rigorosi, che non consentono la conversione di tipo implicita (Python), e quelli sciolti, che eseguono conversioni di tipo implicite (ad esempio, VB, in cui puoi facilmente aggiungere la stringa "123" e il numero 456).
Avendo affrontato la classificazione di Python, proviamo a “giocare” un po’ con l’interprete.

>>> a = b = 1 >>> a, b (1, 1) >>> b = 2 >>> a, b (1, 2) >>> a, b = b, a >>> a , b (2, 1)

Vediamo quindi che l'assegnazione viene eseguita utilizzando il segno =. È possibile assegnare un valore a più variabili contemporaneamente. Quando specifichi un nome di variabile all'interprete in modo interattivo, ne stampa il valore.

La prossima cosa che devi sapere è come sono costruite le unità algoritmiche di base: rami e cicli. Per cominciare, è necessario un piccolo aiuto. Python non ha un delimitatore speciale per i blocchi di codice; il rientro funge da loro ruolo. Cioè, ciò che è scritto con la stessa indentazione è un blocco di comandi. All'inizio questo può sembrare strano, ma dopo un po' di abituarsi ci si rende conto che questa misura “forzata” permette di ottenere un codice molto leggibile.
Quindi le condizioni.

La condizione viene specificata utilizzando un'istruzione if che termina con ":". Le condizioni alternative che verranno soddisfatte se il primo controllo fallisce sono specificate dall'operatore elif. Infine, else specifica un ramo che verrà eseguito se nessuna delle condizioni viene soddisfatta.
Si noti che dopo aver digitato if, l'interprete utilizza il prompt "..." per indicare che è in attesa di ulteriori input. Per dirgli che abbiamo finito, dobbiamo inserire una riga vuota.

(L'esempio con i rami per qualche motivo interrompe il markup sull'hub, nonostante i balli con i tag pre e code. Mi scuso per l'inconveniente, l'ho lanciato qui pastebin.com/f66af97ba, se qualcuno mi dice cosa c'è che non va, lo farò sii molto grato)

Cicli.

Il caso più semplice di ciclo è il ciclo while. Prende una condizione come parametro e viene eseguita finché è vera.
Ecco un piccolo esempio.

>>> x = 0 >>> mentre x<=10: ... print x ... x += 1 ... 0 1 2 ........... 10

Tieni presente che poiché sia ​​print x che x+=1 sono scritti con la stessa indentazione, sono considerati il ​​corpo del ciclo (ricordi cosa ho detto sui blocchi? ;-)).

Il secondo tipo di ciclo in Python è il ciclo for. È simile al ciclo foreach in altre lingue. La sua sintassi è più o meno la seguente.

Per la variabile nell'elenco:
squadre

Tutti i valori della lista verranno assegnati a loro volta alla variabile (in effetti può esserci non solo una lista, ma anche qualsiasi altro iteratore, ma per ora non preoccupiamoci di questo).

Ecco un semplice esempio. L'elenco sarà una stringa, che non è altro che un elenco di caratteri.

>>> x = "Ciao, Python!" >>> for carattere in x: ... print carattere ... H e l ........... !

In questo modo possiamo scomporre la stringa in caratteri.
Cosa fare se abbiamo bisogno di un ciclo che si ripeta un certo numero di volte? È molto semplice, la funzione range verrà in soccorso.

In input prende da uno a tre parametri, in output restituisce una lista di numeri che possiamo “scorrere” con l'operatore for.

Ecco alcuni esempi di utilizzo della funzione range che spiegano il ruolo dei suoi parametri.

>>> intervallo(10) >>> intervallo(2, 12) >>> intervallo(2, 12, 3) >>> intervallo(12, 2, -2)

E un piccolo esempio con un ciclo.

>>> for x in range(10): ... print x ... 0 1 2 ..... 9

Input Output

L'ultima cosa che dovresti sapere prima di iniziare a utilizzare completamente Python è come viene eseguito l'input-output al suo interno.

Per l'output viene utilizzato il comando print, che stampa tutti i suoi argomenti in formato leggibile dall'uomo.

Per l'input da console, viene utilizzata la funzione raw_input(prompt), che visualizza un prompt e attende l'input dell'utente, restituendo ciò che l'utente ha inserito come valore.

X = int(raw_input("Inserisci un numero:")) print "Il quadrato di questo numero è ", x * x

Attenzione! Nonostante esista la funzione input() con un'azione simile, non è consigliabile utilizzarla nei programmi, poiché l'interprete tenta di eseguire le espressioni sintattiche immesse utilizzandola, il che costituisce una grave falla nella sicurezza del programma.

Per la prima lezione è tutto.

Compiti a casa.

1. Crea un programma per calcolare l'ipotenusa di un triangolo rettangolo. La lunghezza delle gambe è richiesta dall'utente.
2. Creare un programma per trovare le radici di un'equazione quadratica in forma generale. I coefficienti vengono richiesti all'utente.
3. Creare un programma per visualizzare una tabella di moltiplicazione in base al numero M. La tabella viene compilata da M * a, a M * b, dove M, a, b sono richiesti dall'utente. L'output dovrebbe essere eseguito in una colonna, un esempio per riga nel seguente formato (ad esempio):
5 x 4 = 20
5 x 5 = 25
E così via.

I migliori articoli sull'argomento