被迫开了个新坑,开始研究Julia了,说实话我原来甚至都没听说过这玩意

那就让我们一起学习吧!

Julia 介绍

Julia 是一个开源的编程语言,采用 MIT 许可证,每个人都可以免费使用。

Julia 是一个面向科学计算的高性能动态高级程序设计语言。

Julia 最初是为了满足高性能数值分析和计算科学的需要而设计的,不需要解释器,速度快。

Julia 于 2012 年首次发行,支持各种平台:macOS、Windows、Linux、FreeBSD、Android。


Julia 语言特点

  • 核心语言非常小,标准库用的是 Julia 语言本身写的。

  • 调用许多其它成熟的高性能基础代码,如线性代数、随机数生成、快速傅里叶变换、字符串处理。

  • 丰富的用于创建或描述对象的类型语法。

  • 高性能,接近于静态编译型语言,包括用户自定义类型等。

  • 为并行计算和分布式计算而设计。

  • 轻量级协程。

  • 优雅的可扩展的类型转换/提升。

  • 支持 Unicode,包括但不限于 UTF-8。

  • 可直接调用 C 函数(不需要包装或是借助特殊的 API)。

  • 有类似 shell 的进程管理能力。

  • 有类似 Lisp 的宏以及其它元编程工具。

  • 可与 Jupyter notebook 一起使用。


Julia 语言用途

Julia 主要功能是用于数值计算。


第一个 Julia 程序

接下来我们来编写第一个 Julia 程序 hello.jl(Julia 文件扩展名 .jl),代码如下:

hello.jl 文件

println("Hello World!")

要执行 Julia 语言代码可以使用 julia hello.jl 命令。

执行以上代码输出:

$ julia hello.jl
Hello, World!

Julia 语言环境安装

Julia 语言支持以下系统:

  • Linux

  • FreeBSD

  • macOS

  • Windows

  • Android

Julia 安装包下载地址为:https://julialang.org/downloads/

Github 源码地址:https://github.com/JuliaLang/julia

国内镜像地址:https://mirrors.tuna.tsinghua.edu.cn/julia-releases/bin/

各个系统对应的包名:

操作系统

包名

Windows

julia-1.7.2-win64.exe

Linux

x86_64.tar.gz

Mac

julia-1.7.2-mac64.dmg 安装包或 julia-1.7.2-mac64.tar.gz 二进制文件

FreeBSD

julia-1.7.2-freebsd-x86_64.tar.gz

注:CPU 是 X86 还是 ARM 可以通过 uname -m 命令查看:

$ uname -m
x86_64

Windows 系统下安装

https://julialang.org/downloads/ 下载 Windows Julia 安装程序。

注意:32 位 Julia 二进制文件可在 32 位和 64 位 Windows(x86 和 x86_64)上运行,但 64 位 Julia 二进制文件只能在 64 位 Windows (x86_64) 上运行,现在电脑也基本上是 64 位的。

运行安装程序,安装过程点击 Next 就好了。

勾选 Add Julia To PATH 自动将 Julia 添加到环境变量。

这样我们就可以在终端执行 Julia 命令了。

Julia 默认安装目录应该类似于 C:\Users\RUNOOB\AppData\Local\Programs\Julia 1.7.2


Linux/FreeBSD 安装

以下介绍了在 Linux/FreeBSD 系统下使用二进制包安装方法,下载二进制包:

wget https://julialang-s3.julialang.org/bin/linux/x64/1.7/julia-1.7.2-linux-x86_64.tar.gz

以上是官网提供的下载地址,如果速度慢,可以采用国内镜像地址下载:

wget https://mirrors.tuna.tsinghua.edu.cn/julia-releases/bin/linux/x86/1.7/julia-1.7.2-linux-i686.tar.gz --no-check-certificate

解压:

tar zxvf julia-1.7.2-linux-i686.tar.gz

Linux/FreeBSD 二进制文件不需要安装,但需要我们的系统可以找到 julia 可执行文件,这就需要将 julia 的目录添加到系统环境中。

解压完成后将 julia 的解压目录移动到 /usr/local 目录下:

mv julia-1.7.2 /usr/local/

移动完成后我们就可以使用 julia 的完整目录执行 Julia 命令:

# /usr/local/julia-1.7.2/bin/julia -v   
julia version 1.7.2

julia -v 命令用于查看版本号。

julia 使用完整路径调用可执行文件:/usr/local/julia-1.7.2/bin/julia -v

也可以将 julia 命令添加到您的系统 PATH 环境变量中,编辑 ~/.bashrc(或 ~/.bash_profile)文件,在最后一行添加以下代码:

export PATH="$PATH:/usr/local/julia-1.7.2/bin/"

添加后执行以下命令,让环境变量立即生效:

source ~/.bashrc     
或
source ~/.bash_profile

这样我们就可以直接执行 julia 命令而不需要添加完整路径:

# julia -v
julia version 1.7.2

macOS 安装

以下介绍了在 macOS 系统下使用二进制包安装方法,下载二进制包:

wget https://julialang-s3.julialang.org/bin/mac/x64/1.7/julia-1.7.2-mac64.tar.gz

以上是官网提供的下载地址,如果速度慢,可以采用国内镜像地址下载:

wget https://mirrors.tuna.tsinghua.edu.cn/julia-releases/bin/mac/x64/1.7/julia-1.7.2-mac64.tar.gz

解压:

tar zxvf julia-1.7.2-mac64.tar.gz

macOS 二进制文件不需要安装,但需要我们的系统可以找到 julia 可执行文件,这就需要将 julia 的目录添加到系统环境中。

解压完成后,可以先把解压包改名为 julia-1.7.2:

mv julia-bf53498635 julia-1.7.2

完成后将 julia-1.7.2目录移动到 /usr/local 目录下:

sudo mv julia-1.7.2 /usr/local/

移动完成后我们就可以使用 julia 的完整目录执行 Julia 命令:

$ /usr/local/julia-1.7.2/bin/julia -v   
julia version 1.7.2

julia -v 命令用于查看版本号。

julia 使用完整路径调用可执行文件:/usr/local/julia-1.7.2/bin/julia -v

也可以将 julia 命令添加到您的系统 PATH 环境变量中,编辑 ~/.bash_profile文件,在最后一行添加以下代码:

export PATH="$PATH:/usr/local/julia-1.7.2/bin/"

添加后执行以下命令,让环境变量立即生效:

source ~/.bash_profile

这样我们就可以直接执行 julia 命令而不需要添加完整路径:

$ julia -v
julia version 1.7.2

不要问为什么MAC没有截图

问就是买不起不想截

Julia 交互式命令窗口

执行 julia 命令可以直接进入交互式命令窗口:

$ julia 
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.7.2 (2022-02-06)
 _/ |\__'_|_|_|\__'_|  |  release-1.7/bf53498635 (fork: 461 commits, 259 days)
|__/                   |

julia> 

执行 exit() 退出交互式命令窗口,也可以通过输入 CTRL-D(同时按 Ctrl 键和 d 键)退出。

当然我们也可以执行一个 Julia 的代码文件,文件名以 .jl 结尾。

以下是一个名为 runoob_test.jl 的文件:

runoob_test.jl 文件

println("Hello World!")
println("RUNOOB")
println(1+1)

要执行 Julia 语言代码可以使用 julia runoob_test.jl 命令。

执行以上代码输出:

$ julia runoob_test.jl
Hello World!
RUNOOB
2

先就到这了,明天继续(雾)

每日一图:

FjBpqHnK2cIB1SmZp5kO2P9qpRaJ.webp