龙港网,网站推广优化之八大方法,wordpress怎么删除某页页眉,龙口市建设局网站数组是一种集合#xff0c;此外 Julia 也有其他类型的集合#xff0c;比如字典和 set#xff08;无序集合列表#xff09;。 字典
字典是一种可变容器模型#xff0c;且可存储任意类型对象。
字典的每个键值 keyvalue 对用 分割#xff0c;每个键值对之间用逗…数组是一种集合此外 Julia 也有其他类型的集合比如字典和 set无序集合列表。 字典
字典是一种可变容器模型且可存储任意类型对象。
字典的每个键值 keyvalue 对用 分割每个键值对之间用逗号 , 分割整个字典包括在花括号 {} 中 ,格式如下所示
创建字典
创建字典的语法格式如下 Dict(key1 value1, key2 value2,,…, keyn valuen)
以下实例创建一个简单的字典键 A 对应的值为 1键 B 对应的值为 2
Dict(A1, B2)
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia
使用 for 来创建一个字典
实例
julia first_dict Dict(string(x) sind(x) for x 0:5:360) Dict{String, Float64} with 73 entries: 285 -0.965926 310 -0.766044 245 -0.906308 320 -0.642788 350 -0.173648 20 0.34202 65 0.906308 325 -0.573576 155 0.422618 80 0.984808 335 -0.422618 125 0.819152 360 0.0 75 0.965926 110 0.939693 185 -0.0871557 70 0.939693 50 0.766044 190 -0.173648 ⋮ ⋮
键Key
字典中的键是唯一的 如果我们为一个已经存在的键分配一个值我们不会创建一个新的而是修改现有的键。
查找 key
我们可以使用 haskey() 函数来检查字典是否包含指定的 key
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia haskey(first_dict, A) false julia haskey(D, A) true julia haskey(D, Z) false
也可以使用 in() 函数来检查字典是否包含键/值对
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia in((A 1), D) true julia in((X 220), first_dict) false
添加 key/value 对
我们可以在已存在的字典中添加一个新的 key/value 对如下所示
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia D[C] 3 3 julia D Dict{String, Int64} with 3 entries: B 2 A 1 C 3
删除 key/value 对
我们可以使用 delete!() 函数删除已存在字典的 key
实例
julia delete!(D, C) Dict{String, Int64} with 2 entries: B 2 A 1
获取字典中所有的 key
我们可以使用 keys() 函数获取字典中所有的 key
实例
julia keys(D) KeySet for a Dict{String, Int64} with 2 entries. Keys: B A julia
值Value
字典中的每个键都有一个对应的值。
查看字典所有值
我们可以使用 values() 查看字典所有值
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia values(D) ValueIterator for a Dict{String, Int64} with 2 entries. Values: 2 1 julia
字典作为可迭代对象
我们可以将字典作为可迭代对象来查看键/值对
实例
julia DDict(A1, B2) Dict{String, Int64} with 2 entries: B 2 A 1 julia for kv in D println(kv) end B 2 A 1
实例中 kv 是一个包含每个键/值对的元组。
字典排序
字典是无序的但我们可以使用 sort() 函数来对字典进行排序
实例
julia runoob_dict Dict(R 100, S 220, T 350, U 400, V 575, W 670) Dict{String, Int64} with 6 entries: S 220 U 400 T 350 W 670 V 575 R 100 julia for key in sort(collect(keys(runoob_dict))) println($key $(runoob_dict[key])) end R 100 S 220 T 350 U 400 V 575 W 670
我们可以使用 DataStructures.ji 包中的 SortedDict 数据类型让字典始终保持排序状态。
使用 DataStructures 包需要先安装它可以在 REPL 的 Pkg 模式中使用 add 命令添加 SortedDict。
在 REPL 中输入符号 ] 进入 pkg 模式。
进入 pkg 模式
julia ] # 输入 ] 就进入 pkg 模式
添加包预防语法格式
add 包名
以下我们添加 DataStructures 包后后面的实例就可以正常运行了
(v1.7) pkg add DataStructures
未注册的包可以直接指定 url
add https://github.com/fredrikekre/ImportMacros.jl
本地包
add 本地路径/包名.jl
实例
julia import DataStructures julia runoob_dict DataStructures.SortedDict(S 220, T 350, U 400, V 575, W 670) DataStructures.SortedDict{String, Int64, Base.Order.ForwardOrdering} with 5 entries: S 220 T 350 U 400 V 575 W 670 julia runoob_dict[R] 100 100 julia runoob_dict DataStructures.SortedDict{String, Int64, Base.Order.ForwardOrdering} with 6 entries: R 100 S 220 T 350 U 400 V 575 W 670 Set(集合)
Julia Set(集合)是没有重复的对象数据集所有的元素都是唯一的。
以下是 set 和其他类型的集合之间的区别:
set 中的元素是唯一的set 中元素的顺序不重要
set 用于创建不重复列表。
创建 Set 集合
借助 Set 构造函数我们可以创建如下集合
实例
julia var_site Set() Set{Any}() julia num_primes Set{Int64}() Set{Int64}() julia var_site Set{String}([Google,Runoob,Taobao]) Set{String} with 3 elements: Google Taobao Runoob
Alternatively we can also use push!() function, as arrays, to add elements in sets as follows −
我们可以使用 push!() 函数添加集合元素如下所示
实例
julia push!(var_site, Wiki) Set{String} with 4 elements: Google Wiki Taobao Runoob
我们可以使用 in() 函数查看元素是否存在于集合中
实例
julia in(Runoob, var_site) true julia in(Zhihu, var_site) false
常用操作
并集、交集和差集是我们可以对集合常用的一些操作 这些操作对应的函数是 union()、intersect() 和 setdiff()。 并集
两个集合 AB把他们所有的元素合并在一起组成的集合叫做集合 A 与集合 B 的并集。
实例
julia A Set{String}([red,green,blue, black]) Set{String} with 4 elements: blue green black red julia B Set([red,orange,yellow,green,blue,indigo,violet]) Set{String} with 7 elements: indigo yellow orange blue violet green red julia union(A, B) Set{String} with 8 elements: indigo green black yellow orange blue violet red
交集
集合 A 和 B 的交集是含有所有既属 A 又属于 B 的元素而没有其他元素的集合。
实例
julia intersect(A, B) Set{String} with 3 elements: blue green red
差集
集合 A 和 B 的差集是含有所有属 A 但不属于 B 的元素即去除 B 与 A 重叠的元素。
实例
julia setdiff(A, B) Set{String} with 1 element: black 字典与集合常用函数实例
在下面的实例中演示了字典中常用的函数在集合中也同样适用
创建两个字典 dict1 和 dict2
实例
julia dict1 Dict(100X, 220 Y) Dict{Int64,String} with 2 entries: 100 X 220 Y julia dict2 Dict(220 Y, 300 Z, 450 W) Dict{Int64,String} with 3 entries: 450 W 220 Y 300 Z
字典并集
实例
julia union(dict1, dict2) 4-element Array{Pair{Int64,String},1}: 100 X 220 Y 450 W 300 Z Intersect julia intersect(dict1, dict2) 1-element Array{Pair{Int64,String},1}: 220 Y
字典差集
实例
julia setdiff(dict1, dict2) 1-element Array{Pair{Int64,String},1}: 100 X
合并字典
实例
julia merge(dict1, dict2) Dict{Int64,String} with 4 entries: 100 X 450 W 220 Y 300 Z
查看字典中的最小值
实例
julia dict1 Dict{Int64,String} with 2 entries: 100 X 220 Y julia findmin(dict1) (X, 100)