在Python中打印函数

Cap*_*uzz 3 python

我刚开始学习Python,而且我正在读一本教我的书,在书中我的功能就像我下面的那个一样打印出第一个函数中定义的实际文本,但是当我运行我的脚本它说: <function two at 0x0000000002E54EA0>作为输出.我究竟做错了什么?我安装了错误的Python或其他东西吗?我下载了3.3.0版本

这是我的代码:

def one():
    print ("lol")
    print ("dood")

def two():
    print (one)
    print (one)

print (two)
Run Code Online (Sandbox Code Playgroud)

Mic*_*ior 11

这不是你要找的答案......

但为了完整性,假设您确实想要打印函数本身的代码.这仅在代码是从文件(而不是REPL)执行时才有效.

import inspect
code, line_no = inspect.getsourcelines(two)
print(''.join(code))
Run Code Online (Sandbox Code Playgroud)

也就是说,这样做的理由不是很多.

  • 不是正确的问题,而是正确的标题和正确的答案. (3认同)
  • 谢谢!我是根据问题标题来到这里的,你把它钉了! (2认同)

Tim*_*Tim 6

您的功能已打印文本,您无需打印功能.只需打电话给他们(不要忘记括号).

def one():
    print ("lol")
    print ("dood")

def two():
    one()
    one()

two()
Run Code Online (Sandbox Code Playgroud)