对比python学julia(第一章)--(第二节)似曾相识燕归来
Julia和python一样,都是跨平台开源语言,而且都是动态语言,所以毫无疑问,需要运行时支撑。很简单,到官网去下载julia(https://julialang.org/downloads/)。和python一样,有多个操作系统版本,这里我们下载julia-1.7.1-win64版本。安装很简单,不多说。要注意的是把Add Julia to PATH打上勾,不然后面要手动去环境变量里面加。看下图,就明白了:

安装完后,windows桌面上会生成julia的快捷方式图标,双击图标,据会打开jula自带的基于shell的开发环境,这点和python也极为相似。Python的shell开发环境叫IDLE(Integrated Development and Learning Environment),直译过来的意思就是集成开发与学习环境。而julia的shell开发环境叫REPL(Read Eval Print Loop),意思就是“读取”-“运算”-“打印/输出”—“循环”,然后你们看到的就是这个样子的:
|
|
只不过,python的IDLE功能要多一些。其实两者都差不多,都是类似于一种聊天方式的编程模式。专业点的说法,就是书写和运行代码段。
好了,我们安装完了,来看看永远的“hello world”怎么写。Python是这样的:

而julia是这样的:

学过java的同学应该对println不陌生,就是输出结果并换一行。
工欲善其事必先利其器。如果仅仅依靠REPL环境写代码,颇有点捉襟见肘,我们需要配置一个高级点的开发环境。Julia官网推荐了以下工具:

Julia 团队,曾经力推基于 Atom 的 Juno IDE,但目前已表示弃坑,全面投奔 VSCode。我们知道,vscode是通过插件来兼容多语言编程的,所以,julia也不例外。当然也很简单,打开vscode,去扩展商店里面搜索“julia”和“Julia Formatter”扩展,安装就行。然后去设置里面根据需求进行参数配置,也可以直接在setting.json里面手写配置。

手写大致如下:
{
"julia.deleteJuliaCovFiles": true,
"julia.completionmode": "qualify",
"julia.editor": "code",
"julia.enableCrashReporter": false,
"julia.enableTelemetry": false,
"julia.execution.codeInREPL": true,
"julia.execution.resultType": "both",
"julia.focusPlotNavigator": true,
"julia.lint.missingrefs": "symbols",
"julia.symbolCacheDownload": false,
"juliaFormatter.alignConditional": true,
"juliaFormatter.alignPairArrow": true,
"juliaFormatter.alignStructField": true,
"juliaFormatter.removeExtraNewlines": true
}
好了,下面我们正式开始依葫芦画瓢对比python学julia编程了。我们会以一个个有趣的Python程序实例,转换为julia程序,并对其中涉及到的julia基础知识进行讲解。
对比python学julia(第一章)--(第二节)似曾相识燕归来的更多相关文章
- tensorflow2.0学习笔记第一章第二节
1.2常用函数 本节目标:掌握在建立和操作神经网络过程中常用的函数 # 常用函数 import tensorflow as tf import numpy as np # 强制Tensor的数据类型转 ...
- ASP.NET自定义控件组件开发 第一章 第二篇 接着待续
原文:ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 很感谢大家给我的第一篇ASP.NET控件开发的支持!在写这些之前,我也看了 ...
- Ionic 入门与实战之第二章第二节:Ionic 环境搭建之 Ionic Lab 使用
原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第二节,主要对 Ionic Lab 工具作了介绍,并讲解了其使用方法,这也是一个开发 Ionic 比较好的调试工具. 原文发表于 ...
- 通过游戏学python 3.6 第一季 第二章 实例项目 猜数字游戏--核心代码--猜测次数 可复制直接使用 娱乐 可封装 函数
猜数字游戏--核心代码--猜测次数 #猜数字--核心代码--猜测次数 number=33 amount=3 count=0 while count<=amount: conversion ...
- 路飞学城-Python爬虫集训-第一章
自学Python的时候看了不少老男孩的视频,一直欠老男孩一个会员,现在99元爬虫集训果断参与. 非常喜欢Alex和武Sir的课,技术能力超强,当然讲着讲着就开起车来也说明他俩开车的技术也超级强! 以上 ...
- python全栈第一章
第一章 Python基础变量定义规则:1.变量名只能是字母数字或者下划线的任意组合2.变量名的第一个字符不能是数字3.关键字不能申明为变量名定义方式:1.驼峰体AgeOfSzp2.下划线隔开Age_o ...
- CSS3秘笈复习:第一章&第二章&第三章
第一章: 1.<cite>标签不仅可以将网页设置为斜体,还能给标题做上标记,使它便于被搜索引擎搜索到. 第二章: 1.import指令链接样式表: CSS本身有一种添加外部样式的方法:@i ...
- Practical Vim 第一章 & 第二章
第一章:Vim 解决问题的方式 前言 本质上讲,我们的工作是重复性的.凡是可以简化重复性操作的方式,都会成倍地节省我们的时间. Vim 对重复性操作进行了优化.它之所以能高效地重复,是因为它会记录我们 ...
- Linux第一章第二章学习笔记
第一章 Linux内核简介 1.1 Unix的历史 它是现存操作系统中最强大最优秀的系统. 设计简洁,在发布时提供原代码. 所有东西都被当做文件对待. Unix的内核和其他相关软件是用C语言编写而成的 ...
- Linux内核设计与实现 第一章 第二章
第一章 Linux内核简介 Unix特点: (1) Unix很简洁,仅仅提供几个几百个系统调用并且有一个非常明确的设计目的 (2) 在Unix中,所有的东西都被当作文件对待,通过一套相 ...
随机推荐
- C++笔记(9) 异常
程序有时会遇到运行阶段错误,导致程序无法正常走下去.对于这种问题,处理方法主要有: 1.调用abort() Abort()函数原型位于头文件cstdlib,其典型实现是向标准错误流(即cerr使用的错 ...
- 使用 TiDB Vector 搭建 RAG 应用 - TiDB 文档问答小助手
本文首发至TiDB社区专栏:https://tidb.net/blog/7a8862d5 前言 继上一次<TiDB Vector抢先体验之用TiDB实现以图搜图>后,就迫不及待的想做一些更 ...
- Promise 期约
Promise 期约之前 回调地狱 设想这样一个经常发生的场景,我们希望处理Ajax请求的结果,所以我们将处理请求结果的方法作为回调传入,需要将请求结果继续处理,这就导致我们陷入了回调地狱 doSom ...
- Vue学习:11.了解生命周期
Vue.js框架为组件设计了一套完整的生命周期,涵盖了从创建到销毁的全过程.这些生命周期钩子函数(lifecycle hooks)允许开发者在特定的阶段执行自定义逻辑,以便更好地管理组件的状态和与其交 ...
- 天地图添加多个覆盖物,点击切换选中icon
天地图添加多个覆盖物,点击覆盖物,切换选中的icon,移除之前的icon,再次点击移除之前的... 这个是react写的,先是确定中心位置,然后渲染点位,添加覆盖物,选中icon的不同, 主要看 ...
- json LocalDateTime转对象
json LocalDateTime转对象 feign.codec.DecodeException: JSON parse error: Can not deserialize instance of ...
- 结构型模式(Structural Pattern)
模式介绍 结构型模式(Structural Pattern)的主要目的就是将不同的类和对象组合在一起,形成更大或者更复杂的结构体.该模式并不是简单地将这些类或对象摆放在一起,而是要提供它们之间的关联方 ...
- python Django项目以Debug模式启动和外网访问启动
一.Django介绍 介绍: 完善的web框架,包括前端和后端的管理,django项目管理: 管理后台访问:后面补充 前端页面访问:根据app/settings.py文件下配置的访问地址 1.1 项目 ...
- Css实现浏览滚动条效果
Css实现浏览滚动条效果 前言 也是有大半个月没有更新文章了,大部分时间都在玩,然后就是入职的事.今天就更新一个小知识,刷抖音的时候看到的,感觉还不错. 属性介绍 关键属性animation-time ...
- 嵌入式基础测试手册——基于NXP iMX6ULL开发板(3)
基于测试板卡:创龙科技TLIMX6U-EVM是一款基于NXP i.MX 6ULL的ARM Cortex-A7高性能低功耗处理器设计的评估板,由核心板和评估底板组成.核心板经过专业的PCB Layout ...