在朱莉娅,当我想要打印宽度为10的数字“4”时,我会这样做:
@printf("%10d", 4)
如果我想将宽度设置为特定字符串的长度,例如:
mystr = "Hello World"
如何将“%10d”中的10更改为length(mystr)
?
答案 0 :(得分:5)
查看Formatting库:
using Formatting
printfmt("{:$(length("Hello World"))d}", 4)
答案 1 :(得分:2)
Julia并不支持运行时格式字符串。见https://github.com/JuliaLang/julia/issues/4248
但是,该问题中列出了黑客攻击。见https://github.com/JuliaLang/julia/issues/4248#issuecomment-24196846。基本上,你编写自己的printf函数,它将动态编译:
printf(fmt::String,args...) = @eval @printf($fmt,$(args...))