Python是否存在无需重复声明即可打印变量名及对应值的简写语法
Python 3.8及以上版本已经原生支持你需要的这类简写语法,属于f-string专门为调试场景设计的特性,完美匹配你提到的SAS&=的类似需求,无需重复声明对象。
使用方法非常简单:在f-string的花括号内的表达式末尾添加=后缀即可。
用法示例
- 你提到的
type(var)输出场景,无需重复写表达式:
var = 10 # 原写法 print(f'type(var) = {type(var)}') # 简写写法 print(f'{type(var) = }')
两种写法的输出完全一致,都是:type(var) = <class 'int'>
- 和SAS示例对应的效果:
macrovar = "foobar" print(f'{macrovar=}')
运行后输出为:macrovar=foobar
- 同时支持自定义格式化规则,比如指定数值保留小数位:
pi = 3.1415926 print(f'{pi=:.2f}')
输出为:pi=3.14
注意:该特性仅在Python 3.8及更高版本中可用,低于该版本的Python环境无法使用该简写。
内容的提问来源于stack exchange,提问作者Daniel Thomas
相关产品推荐
相关产品推荐

