Python代码为何未输出true?请帮忙排查问题
问题分析与解决
你的代码存在两个关键问题,导致无法输出预期的"true":
1. 函数调用错误(核心问题)
在if判断语句中,你写的是 btest == atest():
btest是函数本身的引用,并非调用函数后得到的结果;atest()是调用函数后返回的数值5;
将函数对象和整数做比较,结果必然为False,因此不会执行print("true")。
修正方法:必须调用btest(),让它返回结果后再和atest()的返回值比较:
if btest() == atest(): print("true")
2. 变量定义不规范(非核心但建议修正)
你写的 a = [1,5,3], [4,5,6] 实际创建的是包含两个列表的元组,虽然元组也支持索引取值,但如果你的意图是定义二维列表,更规范的写法是:
a = [[1,5,3], [4,5,6]]
修正后的完整代码
a = [[1,5,3], [4,5,6]] def atest(): atwo = a[0][1] return atwo def btest(): btwo = a[1][1] return btwo if btest() == atest(): print("true") print(atest()) print(btest())
修正后的输出
true 5 5
内容的提问来源于stack exchange,提问作者turkrkrkrrkrkrkrkr
相关产品推荐
相关产品推荐

