Python 如果在单行上使用f-string,如何添加数据类型?
我检查了值(a和b)是否为浮点数,它们是否为浮点数。但是,我想知道在上面的print()中,如果数字也是浮点数,它将使用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 %.
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.