在Python 3中,我会
print_me = "Look at this significant figure formatted number: {:.2f}!".format(floating_point_number)
print(print_me)
或
print_me = f"Look at this significant figure formatted number: {floating_point_number:.2f}!"
print(print_me)
朱莉娅
print_me = "Look at this significant figure formatted number: $floating_point_number"
print(print_me)
但这会产生说法
Look at this significant figure formatted number: 61.61616161616161
如何让Julia限制它显示的小数位数?请注意,据我所知,要打印的字符串的必要存储使用@printf
宏来排除。
这样可行,但在风格上看似不正确。
floating_point_number = round(floating_point_number,2)
print_me = "Look at this significant figure formatted number: $floating_point_number"
print(print_me)
答案 0 :(得分:17)
您可以使用标准库包@sprintf
中的Printf
宏。这将返回一个字符串,而不是仅将其打印为@printf
。
using Printf
x = 1.77715
print("I'm long: $x, but I'm alright: $(@sprintf("%.2f", x))")
输出:
I'm long: 1.77715, but I'm alright: 1.78
答案 1 :(得分:8)
除了@ niczky12的回答,您还可以使用专为此类事物设计的Formatting包!
Pkg.add("Formatting")
using Formatting: printfmt
x = 1.77715
printfmt("I'm long: $x, but I'm alright: {:.2f}", x)
输出:
I'm long: 1.77715, but I'm alright: 1.78
答案 2 :(得分:2)
虽然它仍在进行中(我需要添加一些单元测试,并且我想添加一个Python 3.6样式模式),但您也可以使用我的StringUtils.jl包,它会添加C和Python格式化,Swift样式插值,表情符号,LaTex,以及Html和Unicode命名字符到字符串文字。
Pkg.clone("https://github.com/ScottPJones/StringUtils.jl")
Pkg.checkout("StringUtils")
using StringUtils
x = 1.77715
print(u"I'm long: \(x), but I'm alright: \%.2f(x)")
输出:
I'm long: 1.77715, but I'm alright: 1.78