Julia Language
РЕПЛ
Поиск…
Синтаксис
- джулия>
- помочь?>
- оболочка>
- \[латекс]
замечания
Другие пакеты могут определять свои собственные режимы REPL в дополнение к режимам по умолчанию. Например, пакет Cxx
определяет режим оболочки cxx>
для C ++ REPL. Эти режимы обычно доступны с помощью собственных специальных клавиш; см. документацию по упаковке для более подробной информации.
Запустить REPL
После установки Julia для запуска цикла read-eval-print-loop (REPL):
В Unix-системах
Откройте окно терминала, затем введите julia
в приглашении, а затем нажмите Return . Вы должны увидеть что-то вроде этого:
В Windows
Найдите программу Julia в меню «Пуск» и щелкните по ней. REPL должен быть запущен.
Использование REPL в качестве калькулятора
Julia REPL - отличный калькулятор. Мы можем начать с простых операций:
julia> 1 + 1
2
julia> 8 * 8
64
julia> 9 ^ 2
81
Переменная ans
содержит результат последнего вычисления:
julia> 4 + 9
13
julia> ans + 9
22
Мы можем определить собственные переменные, используя оператор присваивания =
:
julia> x = 10
10
julia> y = 20
20
julia> x + y
30
У Джулии есть неявное умножение для числовых литералов, что позволяет некоторым вычислениям быстрее писать:
julia> 10x
100
julia> 2(x + y)
60
Если мы допустим ошибку и сделаем то, что не разрешено, Julia REPL выдает ошибку, часто с полезным советом о том, как исправить проблему:
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
Для доступа или редактирования предыдущих команд используйте клавишу ↑ (Вверх), которая перемещается к последнему элементу в истории. ↓ переходит к следующему элементу в истории. Клавиши ← и → можно использовать для перемещения и редактирования в строке.
У Джулии есть некоторые встроенные математические константы, включая e
и pi
(или π
).
julia> e
e = 2.7182818284590...
julia> pi
π = 3.1415926535897...
julia> 3π
9.42477796076938
Мы можем набирать символы типа π
быстро, используя их коды LaTeX: нажмите \ , затем p и i , затем нажмите клавишу Tab, чтобы подставить \pi
просто набранный π
. Это работает для других греческих букв и дополнительных символов Юникода.
Мы можем использовать любые встроенные математические функции Julia, которые варьируются от простых до довольно мощных:
julia> cos(π)
-1.0
julia> besselh(1, 1, 1)
0.44005058574493355 - 0.7812128213002889im
Сложные числа поддерживаются с помощью im
как мнимой единицы:
julia> abs(3 + 4im)
5.0
Некоторые функции не возвратят сложный результат, если вы не дадите ему сложный ввод, даже если вход является реальным:
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
Точные операции над рациональными числами возможны с использованием оператора //
рационального деления:
julia> 1//3 + 1//3
2//3
См. Раздел « Арифметика» для получения дополнительной информации о том, какие типы арифметических операторов поддерживаются Джулией.
Работа с точностью машины
Обратите внимание, что целые числа машины ограничены по размеру и будут переполняться, если результат слишком велик для хранения:
julia> 2^62
4611686018427387904
julia> 2^63
-9223372036854775808
Этого можно предотвратить с помощью целых чисел произвольной точности в вычислении:
julia> big"2"^62
4611686018427387904
julia> big"2"^63
9223372036854775808
Точки с плавающей запятой также ограничены точностью:
julia> 0.1 + 0.2
0.30000000000000004
Больше (но все же ограничено) точность возможна за счет использования big
:
julia> big"0.1" + big"0.2"
3.000000000000000000000000000000000000000000000000000000000000000000000000000017e-01
Точная арифметика может быть выполнена в некоторых случаях с использованием Rational
s:
julia> 1//10 + 2//10
3//10
Использование режимов REPL
В Julia есть три встроенных режима REPL: режим Julia, режим помощи и режим оболочки.
Режим справки
Julia REPL поставляется со встроенной системой помощи. Нажмите ? в приглашении julia>
для доступа к help?>
.
В командной строке введите имя какой-либо функции или типа, чтобы получить справку для:
Даже если вы не правильно произнесете функцию, Джулия может предложить некоторые функции, которые, возможно, вы имели в виду:
help?> printline
search:
Couldn't find printline
Perhaps you meant println, pipeline, @inline or print
No documentation found.
Binding printline does not exist.
Эта документация работает и для других модулей, если они используют систему документации 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)
Режим оболочки
См Использование Shell внутри РЕПЛ для получения более подробной информации о том , как использовать режим оболочки Джулии, которая доступна, нажав; в подсказке. Этот режим оболочки поддерживает интерполяцию данных из сеанса Julia REPL, что позволяет легко вызвать функции Julia и сделать их результаты в командах оболочки: