推荐学习书目
› 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
ThunderEX
V2EX  ›  Python

弱问:为什么PEP8要分多行导入?

  •  
  •   ThunderEX · Jan 18, 2013 · 4896 views
    This topic created in 5039 days ago, the information mentioned may be changed or developed.
    为什么PEP8说:
    Yes:
    import os
    import sys
    No:
    import os, sys
    10 replies  •  1970-01-01 08:00:00 +08:00
    m
    m
    Jan 18, 2013
    1
    因为界定分隔符不是一件容易的事
    是否要在,后面加空格? ,号是否是类,包的路径名? 分隔符为什么不是;为什么不是:为什么不是/...
    规范的语法去掉所有歧义应该是每行一次import,如java的语法格式
    所以这种目的为了简化语法的使用分隔符一行导入并不严格的符合规范
    binux
    binux
    Jan 18, 2013
    2
    方便dd
    ritksm
    ritksm
    Jan 18, 2013
    3
    我觉得PEP8大部分限制的原因就是为了防止滥用导致代码质量降低。。。比如这个。。。那我可以把所有的import都写在一行了。。。还有一行的字符限制啥的。。。
    imcj
    imcj
    Jan 18, 2013
    4
    我见过好多人喜欢在1行里面写很多代码.
    ThunderEX
    ThunderEX
    OP
    Jan 18, 2013
    5
    @m 又觉得这种“简化语法”不就是人生苦短我用python的意义么……好像很矛盾……
    asxalex
    asxalex
    Jan 18, 2013
    6
    @binux 有道理!!
    openroc
    openroc
    Jan 18, 2013
    8
    没用过,我想大概是方便错误处理,如果import 里面有一个出错的话。
    Cofyc
    Cofyc
    Jan 18, 2013
    9
    查看 diff 方便
    编辑也方便,比如删除一个 package,直接删除当前一行就行,不用在一行中找来找去
    BOYPT
    BOYPT
    Jan 18, 2013
    10
    @ThunderEX Python简化的语法主要是为了容易看容易理解,而不是容易写。说容易写perl够精悍了,不过后续维护的可读性不高。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4693 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 00:13 · PVG 08:13 · LAX 16:13 · JFK 19:13
    ♥ Do have faith in what you're doing.