QWERRRRR 发表于 2019-12-2 11:00:13

求帮助。

def a():
    x = 'python'
    def b():
      print (x)

a()

为啥这样写是没有输出的啊?

QWERRRRR 发表于 2019-12-2 11:00:50

来人

jackz007 发表于 2019-12-2 13:26:01

def a():
    x = 'python'
    def b():
      print (x)
    return b()   # 添加此句即可
a()

QWERRRRR 发表于 2019-12-2 14:41:51

jackz007 发表于 2019-12-2 13:26
def a():
    x = 'python'
    def b():


为什么添加了就可以了呢?运行机制是啥?

jackz007 发表于 2019-12-2 14:46:09

本帖最后由 jackz007 于 2019-12-2 14:50 编辑

QWERRRRR 发表于 2019-12-2 14:41
为什么添加了就可以了呢?运行机制是啥?

      因为你虽然定义了函数 b(),却没有在代码中调用,函数自然不会被执行,而 b() 是 a() 的内嵌函数,只有在 a() 中才能直接调用。调用 a() 并不会自动调用 b() ,必须在 a() 中显式地用语句进行调用。

MMM啊 发表于 2019-12-2 16:32:54

你定义了但是没有return去返回数值怎么会有输出呢?比如打印机帮你打印总得有A4去承接并且在A4上呈现出来吧
页: [1]
查看完整版本: 求帮助。