V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐学习书目
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
changwei
V2EX  ›  Python

为什么 PEP8 规定函数得全部小写?

  •  
  •   changwei ·
    cw1997 · Jun 13, 2017 · 5209 views
    This topic created in 3239 days ago, the information mentioned may be changed or developed.

    比如说getUsernameByUid这种函数,写成驼峰看起来就很舒服,和别的编程语言风格也统一,如果写成get_username_by_uid这样多累啊,得多按好几下 shift。

    而且我看 threading 模块也没遵循 PEP8 规范,比如说他的setDeamon方法就是驼峰命名法,这样看的也舒服啊。

    反正我自己写项目都是写驼峰命名,因为之前写 PHP 和 JavaScript 都是这样写的,只是看到 IDE 报一堆黄色线有点烦。。。

    28 replies    2017-06-13 18:05:36 +08:00
    hahaDashen
        1
    hahaDashen  
       Jun 13, 2017
    我一般都 Get_Username_By_UID 这样写怎么破 XD
    hjzx050935
        2
    hjzx050935  
       Jun 13, 2017
    get_username_by_uid 这个如果写成 getUsernameByUid 也要用 shift + U/B 好多下= =,少打字符而已,我比较不习惯用大小写切换
    thekoc
        3
    thekoc  
       Jun 13, 2017   ❤️ 3
    一直觉得驼峰看起来很不舒服。。。
    nyanyh
        4
    nyanyh  
       Jun 13, 2017
    Go 还规定使用 Tab 缩进呢……
    seancheer
        5
    seancheer  
       Jun 13, 2017
    从 c 继承过来的。
    akira
        6
    akira  
       Jun 13, 2017
    输入大写字母 一样要按 shift 啦,这样想是不是就平衡了
    AnyISalIn
        7
    AnyISalIn  
       Jun 13, 2017
    @thekoc +1
    jingniao
        8
    jingniao  
       Jun 13, 2017
    只有在用类的时候才驼峰,函数用驼峰感觉怪怪的
    geelaw
        9
    geelaw  
       Jun 13, 2017 via iPhone
    @hjzx050935 有可能 po 主用的 Caps Lock 改变大小写哦……

    这只是一个风格罢了,C++ STL 也喜欢这种
    fyl00
        10
    fyl00  
       Jun 13, 2017
    这东西看喜好,看团队习惯……
    F10Y
        11
    F10Y  
       Jun 13, 2017   ❤️ 1
    所以我用 karabiner 对调了_ 和 -
    my101du
        12
    my101du  
       Jun 13, 2017   ❤️ 1
    作为一个在 Laravel 和 Wordpress 之间经常切换的人也表示凌乱。。。其实个人觉得下划线真的比驼峰式在 识别 /反应 这个过程时间更快。
    fy
        13
    fy  
       Jun 13, 2017
    PEP8 我记得是说用统一规则就行,小写下划线或者驼峰。

    IDE 给警告可能是开发者的个人倾向吧。

    我是根据语言换风格,怎么看着顺眼怎么来
    bazingaterry
        14
    bazingaterry  
       Jun 13, 2017 via iPhone
    在写 Python PHP JS 的表示已经切换自如了...
    timsims
        15
    timsims  
       Jun 13, 2017
    找个工具保存时自动格式化就好,对应每种语音一种规则
    Kilerd
        16
    Kilerd  
       Jun 13, 2017   ❤️ 1
    PEP8 的做法是这样的 类就用驼峰命名, 函数就用 _ 。

    这样的好处就是,一眼看下来就知道哪个是类,哪个是函数。

    OneTwoThree one_two_three

    不过这种东西就好像缩进用几个空格一样,应人而异的。自己习惯就好,不过呢,如果是团队合作的话,PEP8 可以说是最方便,最稳妥的方法了。

    为了避免拿出游标卡尺,我一般 Python 就是第一层缩进用 4 个空格,第二层用 5 个 , 第三层用 6 个,类推。
    以免自己写出嵌套层数太多的函数 (滑稽
    junnplus
        17
    junnplus  
       Jun 13, 2017
    那是你之前是写 PHP 和 JavaScript 的,(笑
    这种风格上的写法习惯就好,就像我看驼峰很不舒服
    dd99iii
        18
    dd99iii  
       Jun 13, 2017 via iPhone
    看团队吧
    rocksolid
        19
    rocksolid  
       Jun 13, 2017
    一个语言一套风格,只是用同一种工具的约定,这样你看别人代码舒服,别人看你的也舒服,当然没这需求自己怎么爽怎么写
    clino
        20
    clino  
       Jun 13, 2017
    驼峰读起来比较累因为挤在一起
    lucifer9
        21
    lucifer9  
       Jun 13, 2017
    起码可以随便写不算错误啊
    想想看 Go 怎么规定大小写的
    maemual
        22
    maemual  
       Jun 13, 2017
    统一风格而已。总要选一种风格的,只不过人家选的是下划线
    flyingghost
        23
    flyingghost  
       Jun 13, 2017
    所以我就把 IDE 的 PEP8 naming convention voilation 检查关掉了。
    这个在本机,只针对个人,只是工作习惯问题。
    你要是怼 PEP8,那就上升到宗教问题了!
    di94sh
        24
    di94sh  
       Jun 13, 2017 via Android
    python 就是一种规定了那种方法是最好的语言。
    AirSc
        25
    AirSc  
       Jun 13, 2017
    其实更喜欢用 _ 的
    chengluyu
        26
    chengluyu  
       Jun 13, 2017 via iPhone
    个人觉得,其实无论是 Python 里的 PEP8,C++ 的 Google 规范,还是 JS 里 eslint 的各种 style,都是“推荐、可作参考”的做法。

    但是真正到了实践里,只要做到统一并且易理解就好了。你总不能强求公司里所有项目都改成这种做法吧?
    chengluyu
        27
    chengluyu  
       Jun 13, 2017 via iPhone
    提示一下楼主,那个黄色横线其实可以关闭的。
    Ouyangan
        28
    Ouyangan  
       Jun 13, 2017
    如果是 jetbrains 家的 IDE 错误提示可以设置成自己喜欢的,
    Editor -> Colors & Fonts -> general -> Error ->选择自己喜欢的风格
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5315 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 133ms · UTC 01:18 · PVG 09:18 · LAX 18:18 · JFK 21:18
    ♥ Do have faith in what you're doing.