为了账号安全,请及时绑定邮箱和手机立即绑定

一个小问题,不知道是怎么回事

http://img1.sycdn.imooc.com//58a991050001a42602390155.jpg如图所示,我实在是找不出来毛病在哪,求解释。

正在回答

7 回答

C:\Users\CTF>pythonPython 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:25:58) [MSC v.1500 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> def add(x, y, f):...    return f(x) + f(y)   #此处是4个空格缩进...                         # 函数写完以后,直接按回车Enter,进入>>>>>> add(-5, 9, abs)         #再次按回车Enter,返回结果>>>14


0 回复 有任何疑惑可以回复我~

版本不兼容,python2和python3不同,python2是对的,但python3要这样写:

def add(x, y, f):
    return f(x) + f(y)
print(add(-5, 9, abs))

我记得python3里有个叫“3to2”的模块,可以兼容python2

0 回复 有任何疑惑可以回复我~

3.x的print只支持print()的用法。不再支持print xxx的用法。

0 回复 有任何疑惑可以回复我~

版本问题,python 2.x 和 python 3.x 不兼容的, 这个《Python 进阶》课程是接着 《Python 入门》来的,在《Python 入门》一开始就讲了这里面的例子都是以 python 2.7 为准的。 具体的问题就是楼上说的, 3.x版本的python要用print只能是print(add(-5, 9, abs)),不带括号就会报错



0 回复 有任何疑惑可以回复我~

什么版本的Python


0 回复 有任何疑惑可以回复我~
#1

Mr扶风人3851981 提问者

3.5.2版本的,不知道是咋回事
2017-02-21 回复 有任何疑惑可以回复我~
#2

我是大树 回复 Mr扶风人3851981 提问者

3.x的print只支持print()的用法。不再支持print xxx的用法。
2017-02-23 回复 有任何疑惑可以回复我~

用python打了一次,没错啊,不好意思不知道你哪里打错了http://img1.sycdn.imooc.com//58a997630001a08302480107.jpg

0 回复 有任何疑惑可以回复我~

不好意思,我是用pycharm的,因为用python太重视缩进了,新手用起来有点难

1 回复 有任何疑惑可以回复我~
#1

Mr扶风人3851981 提问者

我的pycharm到期了,不想再找注册码,就卸载了
2017-02-21 回复 有任何疑惑可以回复我~
#2

qq_慕田峪6002559

你好,pycharm有破解版吗
2019-03-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

一个小问题,不知道是怎么回事

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信