有时侯想知道,工作空间中有哪些 变量,你可以用varinfo()函数:
如何找到变量a?
julia> a =1
1
julia> data =varinfo()
name size summary
–––––––––––––––– ––––––––––– –––––––––––
Base Module
Core Module
InteractiveUtils 157.063 KiB Module
Main Module
a 8 bytes Int64
ans 1.385 KiB Markdown.MD
julia> typeof(data)
Markdown.MD
Markdown.MD 是一个很什么东东?
julia> dump(data)
Markdown.MD
content: Array{Any}((1,))
1: Markdown.Table
rows: Array{Array{Any,1}}((7,))
1: Array{Any}((3,))
1: String "name"
2: String "size"
3: String "summary"
2: Array{Any}((3,))
1: String "Base"
2: String ""
3: String "Module"
3: Array{Any}((3,))
1: String "Core"
2: String ""
3: String "Module"
4: Array{Any}((3,))
1: String "InteractiveUtils"
2: String "157.063 KiB"
3: String "Module"
5: Array{Any}((3,))
1: String "Main"
2: String ""
3: String "Module"
6: Array{Any}((3,))
1: String "a"
2: String "8 bytes"
3: String "Int64"
7: Array{Any}((3,))
1: String "ans"
2: String "1.385 KiB"
3: String "Markdown.MD"
align: Array{Symbol}((3,))
1: Symbol l
2: Symbol r
3: Symbol l
meta: Dict{Any,Any}
slots: Array{UInt8}((16,)) UInt8[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]
keys: Array{Any}((16,))
1: #undef
2: #undef
3: #undef
4: #undef
5: #undef
...
12: #undef
13: #undef
14: #undef
15: #undef
16: #undef
vals: Array{Any}((16,))
1: #undef
2: #undef
3: #undef
4: #undef
5: #undef
...
12: #undef
13: #undef
14: #undef
15: #undef
16: #undef
ndel: Int64 0
count: Int64 0
age: UInt64 0x0000000000000000
idxfloor: Int64 1
maxprobe: Int64 0
再细看:
julia> dump(data.content[1])
Markdown.Table
rows: Array{Array{Any,1}}((7,))
1: Array{Any}((3,))
1: String "name"
2: String "size"
3: String "summary"
2: Array{Any}((3,))
1: String "Base"
2: String ""
3: String "Module"
3: Array{Any}((3,))
1: String "Core"
2: String ""
3: String "Module"
4: Array{Any}((3,))
1: String "InteractiveUtils"
2: String "157.063 KiB"
3: String "Module"
5: Array{Any}((3,))
1: String "Main"
2: String ""
3: String "Module"
6: Array{Any}((3,))
1: String "a"
2: String "8 bytes"
3: String "Int64"
7: Array{Any}((3,))
1: String "ans"
2: String "1.385 KiB"
3: String "Markdown.MD"
align: Array{Symbol}((3,))
1: Symbol l
2: Symbol r
3: Symbol l
如何找到变量a?
julia> data.content[1].rows[1]
3-element Array{Any,1}:
"name"
"size"
"summary"
julia> data.content[1].rows[2]
3-element Array{Any,1}:
"Base"
""
"Module"
julia> data.content[1].rows[3]
3-element Array{Any,1}:
"Core"
""
"Module"
julia> data.content[1].rows[4]
3-element Array{Any,1}:
"InteractiveUtils"
"157.063 KiB"
"Module"
julia> data.content[1].rows[5]
3-element Array{Any,1}:
"Main"
""
"Module"
julia> data.content[1].rows[6]
3-element Array{Any,1}:
"a"
"8 bytes"
"Int64"
julia> data.content[1].rows[6][1]
"a"
更简单的方式,可以考虑:
julia> @isdefined a # a是否出现在工作空间中?
true
julia> @which a
Main