當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。