我想得到的输出,就像它是打印在朱莉娅REPL作为字符串,没有打印到REPL。
假设您有一个大矩阵x
。
x = rand(100, 100)
在REPL中,x以一种很好的方式显示。我希望得到这个输出作为一个字符串与函数调用(不是在一个黑客的方式)。我怎么能这么做?
repr(x)
repr(x, context = :displaysize => (80,80))
repr(x, context = :limit => true)
我用print
函数和iocontext
尝试了同样的方法
io = IOBuffer();
print(IOContext(io, :limit => true), x)
String(take!(io))
这将给出与repr
相同的结果。
我猜这就是你想要的:
julia> x=rand(100,100);
julia> io = IOBuffer();
julia> show(IOContext(io, :limit => true, :displaysize => (10, 10)), "text/plain", x);
julia> s = String(take!(io));
julia> println(s)
100×100 Array{Float64,2}:
0.150112 … 0.913
0.14348 0.598862
0.265236 0.378648
⋮ ⋱
0.599803 0.778466
0.79655 0.725736
julia> io = IOBuffer();
julia> show(IOContext(io, :limit => true, :displaysize => (20, 40)), "text/plain", x);
julia> s = String(take!(io));
julia> println(s)
100×100 Array{Float64,2}:
0.150112 0.998585 … 0.913
0.14348 0.754191 0.598862
0.265236 0.364718 0.378648
0.746999 0.436714 0.594933
0.247191 0.340162 0.126489
0.92214 0.518781 … 0.530581
0.483844 0.146089 0.14216
0.421205 0.401629 0.381202
⋮ ⋱
0.0944732 0.990715 0.132398
0.711658 0.958458 0.0849586
0.378591 0.518736 … 0.688399
0.77595 0.319994 0.667458
0.427935 0.375477 0.656718
0.599803 0.779445 0.778466
0.79655 0.939409 0.725736
这里最关键的两件事是:
show
并指定要使用的MIME(我想您需要的是repl中给出的“text/plain”
;一般来说,例如在Jupyter Notebook中,HTML和LaTeX在内部用于某些类型,例如,这就是我们在dataframes.jl中用于显示dataframe
对象的方法):displaysize
通常也是,通常show
从stdout
获取displaysize,但是如果您有一个自定义的IO
,那么它不知道您可能要显示多少行和多少列(当然,如果您喜欢,您可以坚持默认值:))问题内容: 此线程讨论如何在Python中以字符串形式获取函数名称:如何在Python中以字符串 形式获取函数名称? 如何对变量执行相同操作?与函数相反,Python变量没有属性。 换句话说,如果我有一个变量,例如: 我正在寻找一个功能/属性,例如: 返回字符串 更新: 由于人们在问我为什么要这样做,这里有一个例子。我想从此列表在Pandas中创建一个DataFrame,其中列名称 由实际字典的名
问题内容: 因此,我试图在Swift中将“实际变量名称”获取为String,但是还没有找到一种方法…或者也许我正以一个不好的角度看待这个问题和解决方案。 所以这基本上是我想要做的: 不幸的是,我无法在苹果文档中找到任何与之接近的东西,但这是: 但是,这给出了变量本身或变量类型的信息,在这种情况下为字符串,我想要变量的实际名称。 问题答案: 根据更新,它在Swift 3中通过
我用了这段代码并运行,但没有输出出来不知道为什么? 但如果正在使用s=“”;则也没有输出。 但是当我使用s=“”;那么输出就来了,为什么会这样呢?
常见的变量输出有如下情况: 1.在控制器中按如下方式赋值 $this->assign('hello','Hello ThinkCMF!'); return $this->fetch(); 在模板中: <div>{$hello}</div> 2.在控制器中赋值数组变量 $data = ['hello'=>'Hello ThinkCMF!','username'=>'老猫']; $this->as
请参考:http://www.kancloud.cn/manual/thinkphp/1794