2016-06-10 17 views
14

Qual è l'equivalente Julia del valore None in Python? (Come mostrato here costanti built-in.)Nessun valore in Julia

+1

http://docs.julialang.org/en/release-0.4/manual/faq/?highlight=null#how-does- null-or-nothingness-work-in-julia suggerisce che non ha uno –

+2

http://docs.julialang.org/en/release-0.4/manual/types/#nullable-types-representing-missing-values ​​ – DeepSpace

+3

@SimonFraser: il valore di Python 'None' è molto diverso da' null' in C o Java. Python inoltre non ha un valore di tipo 'null'. – StefanKarpinski

risposta

18

L'equivalente Julia del None è la costante nothing: un valore che viene restituito da espressioni e funzioni che non hanno nulla di interessante per tornare. In entrambe le lingue, questo valore non viene stampato su un prompt interattivo quando un'espressione valuta, ma è altrimenti solo un valore normale. Non c'è nulla di magico a parte il comportamento della stampa e il fatto che le persone concordano per convenzione che è il valore che si ritorna quando non c'è nulla di interessante da restituire. Il tipo di nothing si chiama Void dopo il tipo restituito di funzioni C con niente di interessante da restituire.

Il sistema di tipo di Julia può anche esprimere il concetto che un'espressione non può produrre alcun valore - ad es. se genera un errore o fa parte di un blocco di base che non può essere eseguito (codice morto). Il tipo di un'espressione che non può mai produrre un valore è il tipo di unione vuota, Union{}: unione di tipi zero, di cui nessun valore è un'istanza. Questo è diverso dal tipo di nothing - poiché nothing è un valore normale (ma non interessante), quindi non può essere un'istanza di Union{}.

Vedere anche: