return和print()区别;print()出现None
class Cash(): def pay(self): return "cash" class Order(): def order_oay(self,name): return name.pay() if __name__ == '__main__': order = Order() cash = Cash() print(order.order_oay(cash))
输出:
cash
None
出现None原因:
print(order.order_oay(cash))
在Python中,函数和方法可以返回一个值,也可以不返回任何值(实际上,它们返回的是 None)。
当一个函数或方法使用 return 语句返回一个值时,调用这个函数或方法的地方可以直接获得这个返回值,可以对它进行操作或者将其赋值给一个变量。
例如,在代码中,Cash 类的 pay 方法使用 return 语句返回了字符串 "cash",而 Order 类的 order_oay 方法在调用 Cash 类的 pay 方法后就返回了这个字符串。
另一方面,print 函数用于将信息打印到控制台,它并不返回任何值。
当在代码中使用 print('cash') 时,它会直接在控制台上打印出 "cash"。
但是在代码中调用 print 函数并不会返回值,因此不能在 order_oay 方法中那样使用 print 语句。
可以将 print 输出的内容赋值给一个变量,但这并不是常见的用法。
总结:return 语句用于从函数或方法中返回一个值,而 print 函数用于在控制台上打印信息。两者的主要区别在于返回值的用途。