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
fslong
V2EX  ›  Python

萌新问个逗逼问题:

  •  
  •   fslong · 2018-05-29 09:12:00 +08:00 via Android · 9483 次点击
    这是一个创建于 2370 天前的主题,其中的信息可能已经有所发展或是发生改变。

    你们变量名是使用 getSession 这种方式还是 get_session 还是 get-session 这种方式?

    69 条回复    2018-05-30 19:25:46 +08:00
    egen
        1
    egen  
       2018-05-29 09:13:44 +08:00
    看语言习惯
    misaka19000
        2
    misaka19000  
       2018-05-29 09:14:48 +08:00
    第二种
    misaka19000
        3
    misaka19000  
       2018-05-29 09:15:02 +08:00
    变量名也会带动词?
    yulitian888
        4
    yulitian888  
       2018-05-29 09:15:37 +08:00
    变量名使用动词? getSession 妥妥是方法名
    egen
        5
    egen  
       2018-05-29 09:16:06 +08:00
    python 一般用 get_session
    nullcc
        6
    nullcc  
       2018-05-29 09:16:21 +08:00
    一般没用 get-session 这种用法,因为-会被当成减号,具体是 camel case 还是 snack case 看你们项目规范,只要保持一致就好了,没有必须要用哪种的说法,不过就 Python 来说,snack case 比较多
    zynlp
        7
    zynlp  
       2018-05-29 09:19:11 +08:00 via iPhone   ❤️ 7
    拼音大佬:huo_qu_hui_hua
    gouxi
        8
    gouxi  
       2018-05-29 09:21:25 +08:00 via Android
    驼峰,匈牙利…………搜索一下
    bydmm
        9
    bydmm  
       2018-05-29 09:24:08 +08:00 via iPhone
    这个看社区
    fcten
        10
    fcten  
       2018-05-29 09:25:01 +08:00
    写 c 用第二种,写 cpp 用第一种,写前端( html/css )用第三种……
    pepesii
        11
    pepesii  
       2018-05-29 09:26:16 +08:00 via iPhone
    python 我用下滑线,其他我用驼峰
    liuxey
        12
    liuxey  
       2018-05-29 09:32:08 +08:00   ❤️ 5
    Go: GetSession
    Java: getSession
    Python: get_session
    HTML: get-session
    Sylv
        13
    Sylv  
       2018-05-29 09:46:20 +08:00 via iPhone   ❤️ 1
    A3m0n
        14
    A3m0n  
       2018-05-29 09:52:06 +08:00
    @zynlp 代表 PM 消灭你。
    laravel
        15
    laravel  
       2018-05-29 10:01:59 +08:00
    下划线不太好看吧 都是驼峰
    BBCCBB
        16
    BBCCBB  
       2018-05-29 10:05:03 +08:00
    反正第三种应该会被打死
    adablue77
        17
    adablue77  
       2018-05-29 10:05:09 +08:00
    getSessio 有没有强迫症想干掉我🤣
    fy
        18
    fy  
       2018-05-29 10:08:31 +08:00
    @adablue77 #17 开音节,读音都变了吧。你这个同系列的还有比如 getPara
    int11
        19
    int11  
       2018-05-29 10:09:41 +08:00
    huoQuHuiHua
    wellsc
        20
    wellsc  
       2018-05-29 10:13:05 +08:00 via iPhone
    第三种是不可能的
    suilin
        21
    suilin  
       2018-05-29 10:13:46 +08:00
    getSession 这种常用于 C/C++(个人习惯),谢谢#12 #13 两位大佬,学到了
    adablue77
        22
    adablue77  
       2018-05-29 10:14:18 +08:00
    @fy 不重要 很单纯的干掉强迫症 哈哈
    nongmei
        23
    nongmei  
       2018-05-29 10:15:33 +08:00
    java 第一种,python 第二种
    UnknownR
        24
    UnknownR  
       2018-05-29 10:18:03 +08:00   ❤️ 1
    一般是 getSession_Test,变量名里直接用大小写区分,有特别说明的属性和意义时会用下连接符,当然如果变量名太长,也会有下连接符来分割
    luoyuhui
        25
    luoyuhui  
       2018-05-29 10:18:52 +08:00
    js 表示,3 个都用过。。。。
    0x11901
        26
    0x11901  
       2018-05-29 10:32:14 +08:00
    c/cpp 表示甚至还用过拼音
    pkookp8
        27
    pkookp8  
       2018-05-29 10:33:48 +08:00 via Android
    @zynlp 难道不是不是 hqhh ?
    hahasong
        28
    hahasong  
       2018-05-29 10:33:55 +08:00
    @luoyuhui 你这个太不规范了
    zmj1316
        29
    zmj1316  
       2018-05-29 10:36:25 +08:00 via Android
    看你们的代码规范啊,项目要求怎么样就怎么样呗
    xpresslink
        31
    xpresslink  
       2018-05-29 10:44:08 +08:00
    这确实是个萌新的逗逼问题。
    写 python 代码按 pep8 规范应该用第二种。第三种不存在。
    当然了你非用第一种也没有拦着你,就相当于交规要求靠右行,你非作死靠左。
    mineqiqi
        32
    mineqiqi  
       2018-05-29 10:46:54 +08:00
    getSession 是方法名 ):逃
    lunafreya
        33
    lunafreya  
       2018-05-29 10:57:18 +08:00 via iPhone
    C++ / C 可以参考 google 出的那套 convention
    iFlicker
        34
    iFlicker  
       2018-05-29 11:07:08 +08:00
    get 会话
    dychenyi
        35
    dychenyi  
       2018-05-29 11:10:17 +08:00
    这是各家公司的 coding naming style 罢了。。。。
    toxicant
        36
    toxicant  
       2018-05-29 11:38:32 +08:00 via iPhone
    按理说语言一般都有命名规范的,可以参考一下。 不过最重要的还是自己看着舒服!
    hjdtl
        37
    hjdtl  
       2018-05-29 11:43:21 +08:00
    @luoyuhui 第三种怎么用,不报错吗
    daydaydayup
        38
    daydaydayup  
       2018-05-29 11:46:45 +08:00
    Java 方法名第一种
    AkariZzz
        39
    AkariZzz  
       2018-05-29 11:50:28 +08:00
    以前第一第二种混着用,看心情,后来统一规范了用驼峰
    RorschachZZZ
        40
    RorschachZZZ  
       2018-05-29 11:58:03 +08:00
    驼峰
    niubee1
        41
    niubee1  
       2018-05-29 12:06:17 +08:00
    getSession 是一个动作, 变量名最好用名词或者名词词组
    stanley0black
        42
    stanley0black  
       2018-05-29 12:08:20 +08:00 via Android
    css 用- 其他都是驼峰
    sampeng
        43
    sampeng  
       2018-05-29 12:14:51 +08:00
    看语言规范啊。。go 是驼峰,php 和 java 随意,一般统一成,rust 是_。python 也是_。。。为何不统一?因为统一就要去对抗各编辑器的各种 lint。。其实觉得还好。。有 lint 做检查,无所谓
    luoway
        44
    luoway  
       2018-05-29 12:24:19 +08:00
    在描述性的语言( html、css、文件名)中最好用 a-b 这种,方便双击选词。
    在逻辑表达的语言中,看习惯了。
    由于历史系统不支持大小写的问题,资历老的语言用 a_b,新的语言往往 a_b、aB 都支持。
    aristotll
        45
    aristotll  
       2018-05-29 12:29:28 +08:00
    nullcc
        46
    nullcc  
       2018-05-29 12:34:41 +08:00
    @aristotll 没毛病,我说的是一般
    lzhCoooder
        47
    lzhCoooder  
       2018-05-29 12:58:09 +08:00
    语言大战,编辑器大战之后场命名方式大战

    驼峰法 vs 内核法 round1
    qile1
        48
    qile1  
       2018-05-29 13:08:49 +08:00 via Android
    python 定义一个常规过去数据库语句
    SQLGETUserinfo="select * from user"
    获取到列表就成了 SQLGETUserinfoList
    决定一会用下划线,以前每个变量有._init_怕搞混才用驼峰法,不过一堆大写的缩写名称看着头晕
    qile1
        49
    qile1  
       2018-05-29 13:09:57 +08:00 via Android
    python 定义一个常规获取数据库的语句
    SQLGETUserinfo="select * from user"
    获取到列表就成了 SQLGETUserinfoList
    决定以后用下划线,以前每个变量有._init_怕搞混才用驼峰法,不过一堆大写的缩写名称看着头晕
    cuzfinal
        50
    cuzfinal  
       2018-05-29 13:12:07 +08:00
    第三种不存在的
    pein
        51
    pein  
       2018-05-29 13:14:06 +08:00
    再分解一下,Session::get(...) 😄
    snailsir
        52
    snailsir  
       2018-05-29 13:16:37 +08:00
    scheme 第三种
    Damon4V
        53
    Damon4V  
       2018-05-29 14:41:32 +08:00
    驼峰
    kolagala
        54
    kolagala  
       2018-05-29 15:19:22 +08:00 via Android
    我会用 session,new_session
    zdnyp
        55
    zdnyp  
       2018-05-29 15:31:28 +08:00
    @zynlp 哎哟,撞名了
    jason19659
        56
    jason19659  
       2018-05-29 15:47:50 +08:00
    第一种。。然而叫 session 不就完了
    A555
        57
    A555  
       2018-05-29 16:09:55 +08:00
    huoQSession
    jasonding
        58
    jasonding  
       2018-05-29 16:42:22 +08:00
    java 第一种,数据库表相关用第二种,第三种..没用过
    killerv
        59
    killerv  
       2018-05-29 17:11:24 +08:00
    Python 感觉下划线比较好,其他的驼峰
    ctro15547
        60
    ctro15547  
       2018-05-29 17:23:23 +08:00
    huo4_qu3_hui4_hua4
    WinMain
        61
    WinMain  
       2018-05-29 17:46:07 +08:00
    java 用 getSessiong
    python 用 get_session
    xpresslink
        62
    xpresslink  
       2018-05-29 17:53:20 +08:00
    在 win 下大小写不敏感,在数据库里也是默认大小写不敏感的。
    为了保证可移植性和兼容性,老老实实用下划线连接小写单词,保证不被虐。
    最重要是省眼力, get_session 看着有点拙,但是可读性比 getSession 强很多,
    而且大多数 IDE 里拼写检查也要支持的好。
    Foolt
        63
    Foolt  
       2018-05-29 21:19:54 +08:00
    主要看规范,一般各语言都有一个公认的规范,对外发布的采用公共规范,内部代码用内部规范,一般是同一个规范。如果是按 PHP 的 PSR 规范,毫无疑问是 getSession 了。

    不过,如果是个人项目,不需要对别人负责,而且你比较逗比,写成 give_Me-SessionPlease 也无所谓。
    kslr
        64
    kslr  
       2018-05-30 01:00:40 +08:00
    以前写下划线,现在写驼峰,因为漂亮。
    shankerwangmiao
        65
    shankerwangmiao  
       2018-05-30 02:44:58 +08:00
    hqSession ?
    lixm
        66
    lixm  
       2018-05-30 09:14:44 +08:00
    Get-Session 对,我就是 PowerShell
    geying
        67
    geying  
       2018-05-30 09:22:18 +08:00
    java . 数据库 CSS

    有和我一样的么
    jatesun
        68
    jatesun  
       2018-05-30 18:25:35 +08:00
    java 第一个 python 第二个
    SayHeya
        69
    SayHeya  
       2018-05-30 19:25:46 +08:00 via Android
    类名一,函数名二,没有三
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1104 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 18:45 · PVG 02:45 · LAX 10:45 · JFK 13:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.