Julia - 循环
while 循环
当 while 后的条件成立的话,执行循环体内的语句,直到条件不成立,跳出循环
如果条件一直成立,或者循环体中的语句没有能让条件不成立的,则是死循环
julia> i = 1; julia> while i <= 10
println(i)
global i += 1
end
1
2
3
4
5
6
7
8
9
10
在旧版本中,不需要 global 关键字
julia> i = 1; julia> while i <= 10
println(i)
i += 1
end
1
2
3
4
5
6
7
8
9
10
for 循环
julia> for i = 1:10
println(i)
end
1
2
3
4
5
6
7
8
9
10
1:10 是一个 Range 对象,表示的是 1,2,3,4,5,6,7,8,9,10 序列
for 循环遍历这些数,将其逐一赋给变量 i
如果在其它作用域中没有引入变量 i ,那么它仅存在于 for 循环中
julia> for i = 1:10
println(i)
end
1
2
3
4
5
6
7
8
9
10 julia> i
ERROR: UndefVarError: i not defined
for 循环可以遍历任意容器
julia> for i in [1, 4, 9]
println(i)
end
1
4
9 julia> for i in ["julia", "python", "java"]
println(i)
end
julia
python
java
for 循环的多层嵌套
julia> for i = 1:3
for j = 4:6
println((i, j))
end
end
(1, 4)
(1, 5)
(1, 6)
(2, 4)
(2, 5)
(2, 6)
(3, 4)
(3, 5)
(3, 6)
更多的是下面这个写法
julia> for i = 1:3, j = 4:6
println((i, j))
end
(1, 4)
(1, 5)
(1, 6)
(2, 4)
(2, 5)
(2, 6)
(3, 4)
(3, 5)
(3, 6)
break 语句
break 语句是结束整个循环
while 循环中的 break 语句
julia> i = 1; julia> while i <= 10
println(i)
if i == 5
break
end
global i += 1
end
1
2
3
4
5
for 循环中的 break 语句
julia> for j = 1:10
println(j)
if j == 5
break
end
end
1
2
3
4
5
从上面两个例子可以看到 break 语句使得循环在 i 和 j 等于 5 的时候退出了整个循环
continue 语句
continue 语句是结束本次循环继续下一次循环
while 循环的 continue 语句
julia> i = 1; julia> while i <= 10
if i == 5
global i +=1
continue
end
println(i)
global i += 1
end
1
2
3
4
6
7
8
9
10
for 循环的 continue 语句
julia> for j = 1:10
if j == 5
j += 1
continue
end
println(j)
j += 1
end
1
2
3
4
6
7
8
9
10
continue 语句只在 i 和 j 等于 5 的时候跳出了循环,然后又继续循环
Julia - 循环的更多相关文章
- 如果你喜欢python,那你迟早会喜欢上julia的!
你可曾想过有那么一门语言: 这门语言能够有C语言一样的速度,Ruby一样得活力(dynamism).像homoiconic一样的语言,它像Lisp一样有宏,但是也像Matlab一样有显而易见.熟悉的数 ...
- 在天河二号上对比Julia,Python和R语言
Julia是一款高级高效为技术计算(technical computing)而设计的编程语言,其语法与其他计算环境类似.其为分布式计算和并行所设计,最知名的地方在于其接近C语言的高效率. 按开发者的话 ...
- 初试 Julia 语言 (转)
原文地址: https://blog.csdn.net/seekiu/article/details/47397067 随着 Julia 1.0版本的推出,人工智能圈子比较炸锅, 好像这门小众语言要 ...
- Julia体验 语言基础
以前听说过Julia,不过那时候官网还处于时不时宕机状态,最近Julia发布了1.0 released版本到处都是它的资讯,官网良心自带简体中文,趁着热度我也来试试,顺便聊记一二. 关于Julia J ...
- LiveScript 流程控制、循环以及列表推导式
The LiveScript Book The LiveScript Book Generators and Yield 你可以在你的 LiveScript 代码中使用 Ecmascript ...
- 破阵九解:Node和浏览器之事件循环/任务队列/异步顺序/数据结构
前言 本文内容比较长,请见谅.如有评议,还请评论区指点,谢谢大家! >> 目录 开门见山:Node和浏览器的异步执行顺序问题 两种环境下的宏任务和微任务(macrotask &&a ...
- 【.net 深呼吸】细说CodeDom(8):分支与循环
有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
随机推荐
- EasyAACEncoder海思/ARM平台优化G711、G726转AAC的CPU占用高问题
本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/75645378 引言 目前EasyDarwin ...
- height 与 min-height 的继承
min-height: inherit; 继承父元素的 min-height: 80px; 但,不能继承父元素的 height: 200px; height: inherit; 能继承父元素的: he ...
- Split功能的思想实现
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using S ...
- windows 10 安装 sql 2005 安装失败
windows 10 安装 sql 2005 安装失败 网上的方法记录: 安装中无法启动需要先用sp4的补丁文件sqlos.dll,sqlservr.exe 替换D:\Program Files (x ...
- caffe 学习记录1及网络结构
ubuntu git clone 默认在当前文件夹 caffe 基础了解:https://www.zhihu.com/question/27982282/answer/39350629 当然,官网才是 ...
- vue之element-ui设置全局弹出框
这样的需求,在主要功能完成后,需要进行交互效果的完善,需要给请求api的时候添加一个加载中的一个弹出框.但是每个页面每个页面过的话,会很费时间和精力,这里我们可以采用element-ui中的服务式弹出 ...
- 【剑指offer】输入一颗二叉树的根节点,判断是不是平衡二叉树,C++实现
原创博文,转载请注明出处! # 题目 # 举例 # 思路 由平衡二叉树的定义可知,判断二叉树是否是平衡二叉树的关键在于判断任意结点是否是平衡结点.后序遍历二叉树,判断节点的子树是否平衡并计算节点的子树 ...
- 每天一个linux命令:【转载】rmdir命令
今天学习一下linux中命令: rmdir命令.rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.(注意,rm - r dir命令可代替rmdir,但是有很大危险性.)删 ...
- BZOJ1002 FJOI2007 轮状病毒 【基尔霍夫矩阵+高精度】
BZOJ1002 FJOI2007 轮状病毒 Description 轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的.一个N轮状基由圆环上N个不同的基原子和圆心处一个核原子构成的,2个原 ...
- 使 32 位程序使用大于 2GB 的内存
不管在 32 位 Windows 上还是在 64 位 Windows 上,32 位的应用程序都只能使用最大 2GB 的内存,这是我们司空见惯的一个设定.但其实 Windows 提供了一些方法让我们打破 ...