Julia Language
REPL
Recherche…
Syntaxe
- julia>
- aider?>
- coquille>
- \[latex]
Remarques
D'autres packages peuvent définir leurs propres modes REPL en plus des modes par défaut. Par exemple, le package Cxx
définit le mode shell cxx>
pour une REPL C ++. Ces modes sont généralement accessibles avec leurs propres touches spéciales; voir la documentation du paquet pour plus de détails.
Lancer le REPL
Après avoir installé Julia , lancez la boucle REPL (read-eval-print-loop):
Sur les systèmes Unix
Ouvrez une fenêtre de terminal, puis tapez julia
à l'invite, puis appuyez sur Retour . Vous devriez voir quelque chose comme ça:
Sous Windows
Trouvez le programme Julia dans votre menu Démarrer et cliquez dessus. Le REPL devrait être lancé.
Utiliser la REPL comme calculatrice
La Julia REPL est une excellente calculatrice. Nous pouvons commencer par quelques opérations simples:
julia> 1 + 1
2
julia> 8 * 8
64
julia> 9 ^ 2
81
La variable ans
contient le résultat du dernier calcul:
julia> 4 + 9
13
julia> ans + 9
22
Nous pouvons définir nos propres variables en utilisant l'affectation =
opérateur:
julia> x = 10
10
julia> y = 20
20
julia> x + y
30
Julia a une multiplication implicite pour les littéraux numériques, ce qui rend certains calculs plus rapides à écrire:
julia> 10x
100
julia> 2(x + y)
60
Si nous commettons une erreur et faisons quelque chose qui n'est pas autorisé, le Julia REPL émettra une erreur, souvent avec une astuce utile pour résoudre le problème:
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
Pour accéder ou modifier les commandes précédentes, utilisez la touche ↑ (Haut), qui permet de passer au dernier élément de l’historique. Le ↓ se déplace à l'élément suivant de l'histoire. Les touches ← et → peuvent être utilisées pour déplacer et apporter des modifications à une ligne.
Julia a des constantes mathématiques intégrées, y compris e
et pi
(ou π
).
julia> e
e = 2.7182818284590...
julia> pi
π = 3.1415926535897...
julia> 3π
9.42477796076938
Nous pouvons taper des caractères comme π
rapidement en utilisant leurs codes LaTeX: appuyez sur \ , puis sur p et i , puis appuyez sur la touche Tab pour remplacer le \pi
que vous avez tapé avec π
. Cela fonctionne pour d'autres lettres grecques et des symboles unicode supplémentaires.
Nous pouvons utiliser n'importe quelle fonction mathématique intégrée de Julia, allant de simple à assez puissante:
julia> cos(π)
-1.0
julia> besselh(1, 1, 1)
0.44005058574493355 - 0.7812128213002889im
Les nombres complexes sont supportés en utilisant im
comme une unité imaginaire:
julia> abs(3 + 4im)
5.0
Certaines fonctions ne renverront pas de résultat complexe à moins que vous ne leur donniez une entrée complexe, même si l'entrée est réelle:
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
Les opérations exactes sur les nombres rationnels sont possibles en utilisant l’opérateur //
division rationnelle:
julia> 1//3 + 1//3
2//3
Voir le sujet arithmétique pour en savoir plus sur les types d'opérateurs arithmétiques supportés par Julia.
Faire face à la précision de la machine
Notez que les entiers de machine sont limités en taille et déborderont si le résultat est trop grand pour être stocké:
julia> 2^62
4611686018427387904
julia> 2^63
-9223372036854775808
Cela peut être évité en utilisant des entiers de précision arbitraire dans le calcul:
julia> big"2"^62
4611686018427387904
julia> big"2"^63
9223372036854775808
Les points flottants de la machine sont également limités en précision:
julia> 0.1 + 0.2
0.30000000000000004
Plus de précision (mais encore limitée) est possible en utilisant à nouveau big
:
julia> big"0.1" + big"0.2"
3.000000000000000000000000000000000000000000000000000000000000000000000000000017e-01
Dans certains cas, l'arithmétique exacte peut être effectuée à l'aide de Rational
:
julia> 1//10 + 2//10
3//10
Utiliser les modes REPL
Il existe trois modes REPL intégrés dans Julia: le mode Julia, le mode d'aide et le mode shell.
Le mode d'aide
La Julia REPL est équipée d'un système d'aide intégré. Presse ? à l'invite julia>
pour accéder à l' help?>
À l'invite d'aide, tapez le nom d'une fonction ou d'un type pour obtenir de l'aide sur:
Même si vous n'épelez pas correctement la fonction, Julia peut suggérer certaines fonctions qui sont probablement ce que vous vouliez dire:
help?> printline
search:
Couldn't find printline
Perhaps you meant println, pipeline, @inline or print
No documentation found.
Binding printline does not exist.
Cette documentation fonctionne également pour d'autres modules, à condition qu'ils utilisent le système de documentation 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)
Le mode shell
Reportez-vous à la section Utilisation de Shell depuis l'intérieur de REPL pour plus d'informations sur l'utilisation du mode shell de Julia, accessible en appuyant sur ; à l'invite. Ce mode shell prend en charge l’interpolation des données de la session Julia REPL, ce qui facilite l’appel des fonctions Julia et leur rendu dans des commandes shell: