V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
oska874
V2EX  ›  Python

最近看 python 学习手册遇到个问题

  •  
  •   oska874 · 2015-08-25 20:50:30 +08:00 · 2392 次点击
    这是一个创建于 3172 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近看 python 学习手册,里面有个例子:
    ![]( )
    其中 myzip 在 2.7 没问题,但是 mymapPad 就有问题,提示错误:
    ```
    File "D:\bdy\pyCode\zipmap.py", line 57
    def mymap56 (*args, pad=None ):
    ^
    SyntaxError: invalid syntax
    ```
    看着函数参数的位置不对劲,但是又觉得书已经出到第四版了,应该不会有错啊,就准备发帖子求教大家,突然想拿 3.4 试试,结果成功了,原来那个 pad 是关键字参数。然后我又翻看了一下书,前面根本没有提到是讲 3.x 的内容。

    问题来了,有没有专门讲 python 2.x 的书推荐下, 2.x 和 3.x 的混着讲,自己真的吃不消。
    8 条回复    2015-08-26 11:15:44 +08:00
    zeeler
        1
    zeeler  
       2015-08-25 20:56:04 +08:00
    看官方文档。。。
    sivacohan
        2
    sivacohan  
       2015-08-25 21:08:26 +08:00 via Android
    pad 要写在 *args 前面。
    Python2 的参数顺序,*args ,**kwargs 在最后。
    omengye
        3
    omengye  
       2015-08-25 21:24:33 +08:00 via Android
    楼上正解
    oska874
        4
    oska874  
    OP
       2015-08-25 21:42:25 +08:00
    @omengye
    @sivacohan 可是这个例子是 3.0 的。所以我在 2.7 里试了半天都报错,但又不能说是错的
    sivacohan
        5
    sivacohan  
       2015-08-25 22:02:58 +08:00 via Android
    @oska874 2 和 3 的兼容性。我的回复已经告诉你 2 是这样了。你就不知道看看 3 的文档对比一下?
    oska874
        6
    oska874  
    OP
       2015-08-25 22:12:54 +08:00
    @sivacohan 我都说了我在 3 正常运行了,二不正常,也说了函数的参数位置在 2 下面不对。
    WKPlus
        7
    WKPlus  
       2015-08-25 22:35:45 +08:00
    a byte of python 不是就有 2 和 3 的版本么?没有混在一起讲吧
    womaomao
        8
    womaomao  
       2015-08-26 11:15:44 +08:00
    函数参数顺序:(普通参数--带默认值参数--可变参数--关键字参数)。可以挑几个,但是顺序必须这样
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1751 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:29 · PVG 08:29 · LAX 17:29 · JFK 20:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.