June 12
A differenza in C ++ e Java, Python le variabili non contengono informazioni di tipo esplicito. Se stai usando una funzione che richiede una stringa, è possibile passare variabili di altri tipi ad esso senza un'eccezione, anche se il codice può generare un'eccezione quando si tenta di elaborare la variabile. Gli unici tipi di dati, potrebbe essere necessario convertire in stringhe sono composte strutture dati come set e liste. Python include funzioni e gli operatori convenienti per iterare sulle voci in una struttura di dati e aggiungendo caratteri di una variabile stringa.
C ++ e Java richiedono una parola di riserva tipo di precedere tutte le allocazioni variabile perché l'ambiente compilatore o runtime deve sapere come trattare i dati. Questi linguaggi staticamente tipizzati utilizzano il tipo di fusione per la conversione tra i tipi, se possibile. Dal momento che Python è un linguaggio tipizzato in modo dinamico, l'interprete deduce il tipo in fase di esecuzione, quindi è sufficiente assegnare valori alle variabili in base alle esigenze. È possibile assegnare qualsiasi tipo di dati a una variabile precedentemente usato come un tipo diverso, e il collettore Python spazzatura rimuove la vecchia variabile dalla memoria.
Se il programma raccoglie informazioni di testo in una struttura composta ad esempio un elenco, tupla o insieme, è possibile cappio sopra la struttura di dati per aggiungere elementi a una variabile stringa. Non è necessario dichiarare una variabile stringa prima iterazione sulla struttura dei dati, ma può rendere il codice più semplice. Ad esempio, il codice seguente illustra il metodo più semplice per la conversione di un elenco in una stringa:
ultimateQuestion = "" # dichiarano stringa vuota "ultimateQuestion"
tokens = [ "Cosa c'è", 6, "tempi", 9, "?"] # elenco dei tipi misti con spazi
per t in gettoni:
ultimateQuestion + = str (t)
stampa (ultimateQuestion)
Il metodo str utilizzato nel ciclo for getta interi in stringhe e non ha alcun effetto sulle stringhe esistenti. Se si esegue questo codice in Python, esso stampa "Qual è 6 volte 9?"
Come la maggior parte linguaggi di alto livello, Python include molti metodi che appartengono al tipo di stringa incorporato. In Python, è possibile chiamare questi metodi da una stringa letterale, in modo per concatenare gli elementi della lista, ad esempio, è possibile passare una variabile di lista di una stringa letterale di unirsi metodo come nel seguente esempio:
tokens = [ 'Ciao', 'Mondo'] #stringa gettoni senza spazi bianchi
pyString = '' .join (token)
stampa (pyString)
Ciò richiede di script si uniscono dalla '' stringa letterale, che è una stringa di un carattere di appena il carattere di spazio. E concatena 'Ciao' e 'Mondo' in "Ciao Mondo" inserendo l'oggetto chiamante - uno spazio - tra ogni elemento della lista.
Come in altri linguaggi di alto livello, è necessario prestare attenzione alla portata di una variabile quando si dichiarano e l'assegnazione variabili stringa. Se si dichiara una variabile stringa all'interno di una funzione o di ciclo, non è possibile utilizzarlo in qualsiasi altra parte del programma. Ad esempio, l'interprete Python distrugge la variabile "verticalList" dopo il ritorno dal circuito:
per g in generi alimentari:
verticalList += g + '\n' # string declared inside for loop
stampa (verticalList)
Questo script genera un'eccezione perché "verticalList" non è definito al di fuori del campo di applicazione del ciclo for.