Julia 朱拉回复号格式

Julia 朱拉回复号格式,julia,Julia,在MatLab/Octave中,您可以发送一个命令“”,并在REPL中具有如下格式的默认数值输出: 倍频程>95000/0.05 ans=1900000 茱莉亚有可能有类似的行为吗?目前与朱莉娅在一起 版本0.3.0-prerelease+3930(2014-06-28 17:54 UTC) 提交bdbab62*(6天主控) x86_64-redhat-linux 我得到以下数字格式 朱莉娅>95000/0.05 1.9e6 您可以使用@printf宏格式化。它的行为类似于C printf,但与

在MatLab/Octave中,您可以发送一个命令“”,并在REPL中具有如下格式的默认数值输出:

倍频程>95000/0.05

ans=1900000

茱莉亚有可能有类似的行为吗?目前与朱莉娅在一起

版本0.3.0-prerelease+3930(2014-06-28 17:54 UTC)

提交bdbab62*(6天主控)

x86_64-redhat-linux

我得到以下数字格式

朱莉娅>95000/0.05

1.9e6


您可以使用@printf宏格式化。它的行为类似于C printf,但与C的printf不同,类型不需要一致,而是根据需要进行转换。比如说

julia> using Printf
julia> @printf("Integer Format: %d",95000/0.05);
Integer Format: 1900000

julia> @printf("As a String: %s",95000/0.05);
As a String: 1.9e6

julia> @printf("As a float with column sized larger than needed:%11.2f",95000/0.05);
As a float with column sized larger than needed: 1900000.00
可以使用@printf作为REPL中的默认机制,因为REPL是在Base.REPL中的Julia中实现的,尤其是以下函数:

function display(d::REPLDisplay, ::MIME"text/plain", x)
    io = outstream(d.repl)
    write(io, answer_color(d.repl))
    writemime(io, MIME("text/plain"), x)
    println(io)
end
要修改Float64的显示方式,只需为Float64重新定义writemime


我只是想知道,如何用科学记数法打印数字,以便将数据导出到LaTeX?这听起来很危险。
julia> 95000/0.05
1.9e6

julia> Base.Multimedia.writemime(stream,::MIME"text/plain",x::Float64)=@printf("%1.2f",x)
writemime (generic function with 13 methods)

julia> 95000/0.05
1900000.00