区间

Julia 中级

Anthony Markham

Quantitative Developer

区间 - UnitRange

  • range 是一种对象,具有自己的数据类型。
  • 创建区间需指定起点和终点,且两者均为包含端点。
my_range = 1:10  # start:stop
  • 打印 range 不会显示其内部的数值序列!
my_range = 1:10
println(my_range)
1:10
  • UnitRange 是最基本的区间类型。
Julia 中级

区间 - StepRange

  • 创建 StepRange 时需指定步长,每个元素由步长决定。
my_range = 0:10:50  # start:step:stop
  • step 值决定区间的下一个值。
Julia 中级

区间 - StepRange 定义

  • 我们定义的 StepRange 具有:
    • start 值为 1
    • step 值为 10
    • end 值为 50
my_range = 1:10:50
println(my_range)
1:10:50
Julia 中级

区间 - for 迭代

  • 通过迭代来解包区间中的值
  • for 循环可实现,与向量相同
my_range = 0:10:50
for value in my_range
    println(value)
end
0
10
20
30
40
50
Julia 中级

区间 - 访问

  • 区间可按元素访问,与向量相同。
  • 可用 startstepstop 获取区间的对应值。
my_range = 0:10:50
println(my_range[2])
10
Julia 中级

区间 - 访问

  • 区间可按元素访问,与向量相同。
  • 可用 startstepstop 获取区间的对应值。
println(my_range.start)
println(my_range.step)
println(my_range.stop)
0
10
50
Julia 中级

区间 - while 迭代

  • while 循环迭代时需逐个访问元素。
  • 区间用 [] 访问元素,与向量相同。
  • 注意设定 i = 1,因 Julia 从 1 而非 0 开始索引!
i = 1

while i <= length(my_range)
    println(my_range[i])
    i = i + 1
end
Julia 中级

区间 - 展开解包

  • 展开运算符 ... 用于解包可迭代对象。
my_range = 0:10:50
println([my_range...])
[0, 10, 20, 30, 40, 50]
  • 这只是展开运算符的一个简单用法。
Julia 中级

开始练习!

Julia 中级

Preparing Video For Download...