Julia — это научный язык программирования. Он особенно похож на Python и C. Часть его структуры похожа на C, а часть — на Python.
Julia работает быстрее, чем Python; структура кодирования этого более проста, чем C и Python. Он имеет объект структуры, такой как C, но не имеет объекта класса, такого как Python. Тем не менее, Джулия может перегружать функции, подобные объектно-ориентированным языкам. Функцию можно переопределить несколько раз для разных типов объектов. Массивы Джулии начинаются с 1 в качестве индекса, а не с 0.
В общем, я буду сравнивать стиль написания кода Julia и Python. Во-первых, я начну с циклов в контрольных потоках. Потоки управления завершаются оператором end в Julia. Кроме того, в кодовых блоках могут использоваться некоторые научные символы, такие как ∈ (элемент множества, \in). Если вы хотите использовать какие-либо символы, вы можете найти их в разделе Ввод Unicode.
Python для цикла
Exp 1 : prog_lang = "Python" for i in range(len(prog_lang)): print(i, ". element : ", prog_lang[i]) Exp 2 : elements = ["a", "b", "c"] for element in elements: print(element)
юлия для цикла
Exp 1.a : prog_lang = "Julia" for i in 1:length(prog_lang) println(i, ". element : ", prog_lang[i]) end Exp 1.b : prog_lang = "Julia" for i ∈ 1:length(prog_lang) println(i, ". element : ", prog_lang[i]) end Exp 2.a : elements = ["a", "b", "c"] for element in elements println(element) end Exp 2.b : elements = ["a", "b", "c"] for element ∈ elements println(element) end
Еще один незаменимый тип цикла — это while. julia имеет функцию «println» для вывода некоторых сообщений на экран, например, команду печати Python. Julia не имеет структуры while-else. Однако эта ситуация решается командой «break».
Python во время цикла
Exp 1 : input_value = 20 mod_number = 2 while True: if (mod_number > (input_value / 2)): break if ((input_value % mod_number) == 0): print(mod_number) mod_number += 1 Exp 2 : input_value = 11 numbers = 0 while input_value <= 10: print(numbers) numbers += 1 else: print(input_value, " is not equal or less than 10...")
Джулия, пока цикл
Exp 1 : input_value = 20 mod_number = 2 while true if (mod_number > (input_value / 2)) break end if ((input_value % mod_number) == 0) println(mod_number) end mod_number += 1 end Exp 2 : input_value = 11 numbers = 0 while true if (input_value > 10) println(input_value, " is not equal or less than 10...") break end println(numbers) numbers += 1 end
Поток управления If-Else очень важен для программы. Вот почему я хочу вернуться к этой структуре, хотя я привел несколько примеров выше.
Python Если/иначе поток
Exp 1 : num_value = 6 if num_value == 2: print("This number is 2. And, it is control threshold...") elif num_value > 2 : if (num_value % 2) == 0: print("This number is even...") else: print("This number is odd...") else: print("Please, enter number is bigger than 2...")
Джулия Если/иначе поток
Exp 1 : num_value = 6 if num_value == 2 println("This number is 2. And, it is control threshold...") elseif num_value > 2 if (num_value % 2) == 0 println("This number is even...") else println("This number is odd...") end else print("Please, enter number is bigger than 2...") end
Иногда мы хотим написать базовое предложение if в одну строку…
Одна строка Python
Ex 1 : x = 10 y = 5 response = “Equals” if x == y else “Not Equal” print(response)
Юлия Уан Лайн
Ex 1 : x = 10 y = 5 response = x == y ? “Equals” : “Not Equal” print(response)
Следующий
Составные выражения, определения функций и объект структуры будут в части 2…