【发布时间】:2021-11-26 10:55:32
【问题描述】:
如何为 f-string '=' 调试运算符传递变量?
from datetime import datetime
def print_var(var):
print(str(datetime.now())[:19], end=' ')
print(f'{var = }')
test = 5
print_var(test)
我希望print_var(test) 从函数外部打印变量名,即。
test = 5
请参阅Python: Print a variable's name and value?了解问题的上下文。
【问题讨论】:
-
名称不是值的属性。你对
print_var(some_list[index])有什么期待?print_var(5)? -
您希望变量名打印在屏幕上吗?
-
@KunalSharma 是的,我希望
print_var(test)在终端窗口中打印test = 5。 -
@jonrsharpe 我或许应该在 Python 3.8 f-string = 语法的上下文中重新表述这个问题? stackoverflow.com/questions/32000934/…
-
我对语法很熟悉,问题是您希望它不会是“本地名称”
var。获得“外部名称”(test,在这种情况下)有很多可能的骗局,但都归结为同一个问题:该值可能被零个、一个或多个名称引用,并且没有它们中的一个是价值的属性。这是一个很好的介绍:nedbatchelder.com/text/names.html.