Python 3中单行两语句逗号分隔是否为未赋值元组的确认问询
结论
你的理解完全正确。
原理说明
- Python支持隐式元组语法:只要是用逗号分隔的多个表达式,无论是否用小括号包裹,都会被解释器识别为元组类型。
- 你给出的代码
plt.plot(), plt.imshow(img, cmap="gray")的执行逻辑是:先依次执行两个matplotlib方法调用,再将两个方法的返回值打包为一个二元元组。因为没有对该元组做赋值、解包或者作为其他函数参数的操作,这个生成的元组会被直接丢弃(如果在REPL交互式环境下运行,解释器会默认打印这个元组的内容)。
简单验证
你可以运行下面的代码确认该语法特性:
# 隐式创建元组 res = print("调用第一个函数"), print("调用第二个函数") print(type(res)) # 输出: # 调用第一个函数 # 调用第二个函数 # <class 'tuple'>
内容的提问来源于stack exchange,提问作者InputBlackBoxOutput
相关产品推荐
相关产品推荐

