Ricerca…


Sintassi

  • julia>
  • aiutare?>
  • shell>
  • \ [Latex]

Osservazioni

Altri pacchetti possono definire le proprie modalità REPL oltre alle modalità predefinite. Ad esempio, il pacchetto Cxx definisce la modalità shell cxx> per un REPL C ++. Queste modalità sono solitamente accessibili con i propri tasti speciali; vedere la documentazione del pacchetto per maggiori dettagli.

Avvia il REPL

Dopo aver installato Julia , per avviare il read-eval-print-loop (REPL):

Su sistemi Unix

Apri una finestra di terminale, quindi digita julia al prompt, quindi premi Invio . Dovresti vedere qualcosa di simile:

julia in arte ASCII, insieme ad alcune informazioni sulla versione

Su Windows

Trova il programma Julia nel menu di avvio e fai clic su di esso. Il REPL dovrebbe essere lanciato.

Utilizzo del REPL come calcolatore

Il REPL Julia è un calcolatore eccellente. Possiamo iniziare con alcune semplici operazioni:

julia> 1 + 1
2

julia> 8 * 8
64

julia> 9 ^ 2
81

La variabile ans contiene il risultato dell'ultimo calcolo:

julia> 4 + 9
13

julia> ans + 9
22

Possiamo definire le nostre variabili utilizzando l'operatore assignment = :

julia> x = 10
10

julia> y = 20
20

julia> x + y
30

Julia ha una moltiplicazione implicita per i valori letterali numerici, il che rende alcuni calcoli più veloci da scrivere:

julia> 10x
100

julia> 2(x + y)
60

Se commettiamo un errore e facciamo qualcosa che non è permesso, il REPL di Julia genererà un errore, spesso con un suggerimento utile su come risolvere il problema:

julia> 1 ^ -1
ERROR: DomainError:
Cannot raise an integer x to a negative power -n. 
Make x a float by adding a zero decimal (e.g. 2.0^-n instead of 2^-n), or write
1/x^n, float(x)^-n, or (x//1)^-n.
 in power_by_squaring at ./intfuncs.jl:82
 in ^ at ./intfuncs.jl:106

julia> 1.0 ^ -1
1.0

Per accedere o modificare i comandi precedenti, utilizzare il tasto (Su), che si sposta sull'ultimo elemento della cronologia. Il ↓ si sposta sull'elemento successivo nella cronologia. I tasti e possono essere utilizzati per spostare e apportare modifiche a una linea.

Julia ha alcune costanti matematiche incorporate, tra cui e e pi (o π ).

julia> e
e = 2.7182818284590...

julia> pi
π = 3.1415926535897...

julia> 3π
9.42477796076938

Possiamo digitare rapidamente caratteri come π usando i loro codici LaTeX: premi \ , quindi p e i , quindi premi il tasto Tab per sostituire il \pi appena digitato con π . Funziona con altre lettere greche e simboli Unicode aggiuntivi.

Possiamo utilizzare qualsiasi funzione matematica integrata di Julia, che va dalla semplice alla abbastanza potente:

julia> cos(π)
-1.0

julia> besselh(1, 1, 1)
0.44005058574493355 - 0.7812128213002889im

I numeri complessi sono supportati usando im come unità immaginaria:

julia> abs(3 + 4im)
5.0

Alcune funzioni non restituiscono un risultato complesso a meno che non gli dai un input complesso, anche se l'input è reale:

julia> sqrt(-1)
ERROR: DomainError:
sqrt will only return a complex result if called with a complex argument. Try
sqrt(complex(x)).
 in sqrt at math.jl:146

julia> sqrt(-1+0im)
0.0 + 1.0im

julia> sqrt(complex(-1))
0.0 + 1.0im

Le operazioni esatte sui numeri razionali sono possibili usando l'operatore // rational division:

julia> 1//3 + 1//3
2//3

Vedi l'argomento Arithmetic per ulteriori informazioni su quali tipi di operatori aritmetici sono supportati da Julia.

Trattare con la precisione della macchina

Si noti che gli interi macchina sono vincolati in termini di dimensioni e si riempiranno se il risultato è troppo grande per essere archiviato:

julia> 2^62
4611686018427387904

julia> 2^63
-9223372036854775808

Questo può essere evitato usando numeri interi arbitrari di precisione nel calcolo:

julia> big"2"^62
4611686018427387904

julia> big"2"^63
9223372036854775808

Anche i punti mobili della macchina sono limitati in precisione:

julia> 0.1 + 0.2
0.30000000000000004

Più (ma ancora limitata) precisione è possibile usando di nuovo big

julia> big"0.1" + big"0.2"
3.000000000000000000000000000000000000000000000000000000000000000000000000000017e-01

L'aritmetica esatta può essere eseguita in alcuni casi usando Rational s:

julia> 1//10 + 2//10
3//10

Utilizzo delle modalità REPL

Esistono tre modalità REPL incorporate in Julia: la modalità Julia, la modalità di guida e la modalità shell.

La modalità Guida

Julia REPL è dotato di un sistema di aiuto integrato. Premere ? al prompt di julia> per accedere al prompt help?> .

Al prompt della guida, digitare il nome di alcune funzioni o tipi per ottenere aiuto per:

aiuto?> abs; ricerca: abs abs2 abspath abstract AbstractRNG AbstractFloat AbstractArray; abs (x); Il valore assoluto di x .; Quando viene applicato abs agli interi con segno, può verificarsi un overflow, con conseguente restituzione di un valore negativo. Questo overflow si verifica solo quando abs viene applicato al valore minimo rappresentabile di un intero con segno. Cioè, quando x == typemin (typeof (x)), abs (x) == x <0, non -x come potrebbe essere previsto.

Anche se non si scrive correttamente la funzione, Julia può suggerire alcune funzioni che potrebbero essere ciò che intendevi:

help?> printline
search:

Couldn't find printline
Perhaps you meant println, pipeline, @inline or print
  No documentation found.

  Binding printline does not exist.

Questa documentazione funziona anche per altri moduli, purché utilizzino il sistema di documentazione di Julia.

julia> using Currencies

help?> @usingcurrencies
  Export each given currency symbol into the current namespace. The individual unit
  exported will be a full unit of the currency specified, not the smallest possible
  unit. For instance, @usingcurrencies EUR will export EUR, a currency unit worth
  1€, not a currency unit worth 0.01€.

  @usingcurrencies EUR, GBP, AUD
  7AUD  # 7.00 AUD

  There is no sane unit for certain currencies like XAU or XAG, so this macro does
  not work for those. Instead, define them manually:

  const XAU = Monetary(:XAU; precision=4)

La modalità Shell

Vedi Usare Shell all'interno del REPL per maggiori dettagli su come utilizzare la modalità shell di Julia, che è accessibile premendo ; al prompt. Questa modalità shell supporta l'interpolazione dei dati dalla sessione REPL Julia, il che rende facile chiamare le funzioni di Julia e rendere i loro risultati nei comandi della shell:

shell> ls $ (Pkg.dir ("JSON")); dati del banco appveyor.yml LICENSE.md nohup.out README.md REQUIRE src test



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow