当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia IOContext方法用法及代码示例


用法:

IOContext(io::IO, KV::Pair...)

创建一个包装给定流的 IOContext,将指定的 key=>value 对添加到该流的属性中(注意 io 本身可以是 IOContext )。

  • 使用 (key => value) in io 查看此特定组合是否在属性集中
  • 使用 get(io, key, default) 检索特定键的最新值

以下属性是常用的:

  • :compact :布尔值,指定应该更紧凑地打印值,例如该数字应以更少的数字打印。这是在打印数组元素时设置的。 :compact 输出不应包含换行符。
  • :limit :布尔值,指定容器应该被截断,例如显示 代替大多数元素。
  • :displaysizeTuple{Int,Int} 给出用于文本输出的行和列的大小。这可用于覆盖调用函数的显示大小,但要获取屏幕大小,请使用 displaysize 函数。
  • :typeinfo:一个Type,表征已经打印的关于将要显示的对象的类型的信息。这主要在显示相同类型的对象集合时很有用,这样可以避免冗余类型信息(例如,[Float16(0)] 可以显示为 "Float16[0.0]" 而不是 "Float16[Float16(0.0)]" :在显示数组的元素时, :typeinfo 属性将设置为 Float16 )。
  • :color:布尔值,指定是否支持/预期 ANSI 颜色/转义码。默认情况下,这取决于io 是否是兼容终端以及启动julia 时的任何--color 命令行 标志。

例子

julia> io = IOBuffer();

julia> printstyled(IOContext(io, :color => true), "string", color=:red)

julia> String(take!(io))
"\e[31mstring\e[39m"

julia> printstyled(io, "string", color=:red)

julia> String(take!(io))
"string"
julia> print(IOContext(stdout, :compact => false), 1.12341234)
1.12341234
julia> print(IOContext(stdout, :compact => true), 1.12341234)
1.12341
julia> function f(io::IO)
           if get(io, :short, false)
               print(io, "short")
           else
               print(io, "loooooong")
           end
       end
f (generic function with 1 method)

julia> f(stdout)
loooooong
julia> f(IOContext(stdout, :short => true))
short

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 Base.IOContext — Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。