萌新问个逗逼问题: - V2EX
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 9951 次点击
    这是一个创建于 2699 天前的主题,其中的信息可能已经有所发展或是发生改变。

    你们变量名是使用 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
    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 &nsp;
       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     Solana     2624 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 54ms UTC 13:13 PVG 21:13 LAX 06:13 JFK 09:13
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86