Python 如果在单行上使用f-string,如何添加数据类型?

Python 如果在单行上使用f-string,如何添加数据类型?,python,python-3.x,Python,Python 3.x,我检查了值(a和b)是否为浮点数,它们是否为浮点数。但是,我想知道在上面的print()中,如果数字也是浮点数,它将使用f-string。我怎么检查 有没有可能像上面一样用一个单子来编写下面的代码,并检查它是浮点还是字符串 print(f"{12.3152},{89.654}") # f-string print("{0:.2f} {1:.3f}".format(12.3152, 89.654)) # .format print("%.2f %.

我检查了值(a和b)是否为浮点数,它们是否为浮点数。但是,我想知道在上面的print()中,如果数字也是浮点数,它将使用f-string。我怎么检查

有没有可能像上面一样用一个单子来编写下面的代码,并检查它是浮点还是字符串

print(f"{12.3152},{89.654}") # f-string
print("{0:.2f} {1:.3f}".format(12.3152, 89.654)) # .format
print("%.2f %.3f" % (12.3152, 89.654)) # legacy code

Output

12.3152,89.654
12.32 89.654
12.32 89.654

a=12.3152
b=89.654
打印(f“{a}{b}”)
打印(类型(a和b))
输出
12.3152 89.654
编辑

@毗湿奴德夫
@贾斯汀

对于令人困惑的问题,很抱歉

这是我想知道的

a = 12.3152
b = 89.654

print(f"{a} {b}")
print(type(a and b))

Output

12.3152 89.654
<class 'float'>
print(类型(f“{12.3152}{89.654}”))
印刷品(f“{12.3152}{89.654}”,字体(12.3152和89.654))
输出
12.3152 89.654 
正如您在第一个print()中所看到的,它是一个字符串,第二个print()将其分类为浮点。所以,我假设如果我使用一个f字符串,而没有像a和b这样的变量,你会这么做吗?我希望现在更清楚了。

使用f字符串就像使用变量一样

你可以做:

ans_type=类型(a和b)
打印(f“类型为{ANSU type}”)

print(f“类型为{type(a和b)}”)

这就是您需要的:
print(f{12.3152.2f},{89.654.3f})
type(a和b)
可能没有执行您认为它正在执行的操作
print(type(f{12.3152}{89.654})
标识为字符串,因为
type
正在检查括号中的“字符串”。
print(f{12.3152}{89.654},type}(12.3152和89.654))
标识为float,因为
type
正在检查括号中的“数字”.有意义吗?是的。感谢您的所有回答。我必须提高提问能力。
print(type(f"{12.3152} {89.654}"))
print(f"{12.3152} {89.654}", type(12.3152 and 89.654))

Output
<class 'str'>
12.3152 89.654 <class 'float'>

As you can see in the first print(), it is a string, the second print() classifies it as a float. So, I'm assuming if I were to use an f-string without having any variables like a and b, that's how you would do it? I hope it is clearer now.