non*_*nex 5 python regex naming naming-conventions
Python中的正则表达式是否有可接受的命名约定?或者,如果没有,有什么建议如何命名他们?通常我将它们命名为look_for_date或者,address_re但我读过几个在变量名中使用"_re"这样的后缀的地方并不好.对我来说,好像正则表达式需要的东西,以表明它是一个正则表达式,因为如果你只是把它命名date或者address,你不就能够做这样的东西,这似乎直观:
date = date_re.match(text)
编译的正则表达式是常量,因此应该有一个UPPER_CASE_WITH_UNDERSCORES名称.我倾向于为他们所匹配的东西命名; 举一个我最近写的代码的例子:
import re
VALID_CLOSURE_PATTERN = re.compile(r'''
^\d{2} # starts with two digits 0-9
[NY]{4}$ # followed by four Y/N characters
''', re.IGNORECASE + re.VERBOSE)
class RoadClosure(object):
def __init__(self, ..., closure_pattern):
"""Initialise the new instance."""
if not VALID_CLOSURE_PATTERN.match(closure_pattern):
raise ValueError('invalid closure pattern: {!r}'.format(closure_pattern))
...
...
Run Code Online (Sandbox Code Playgroud)
我认为这清楚地表明发生了什么,VALID_CLOSURE_PATTERN传达"这描述了我们认为是有效的封闭模式"和类似的行:
if not VALID_CLOSURE_PATTERN.match(closure_pattern):
Run Code Online (Sandbox Code Playgroud)
描述它接近简单英语的实际行动.所以在你的情况下,你可以写:
date = VALID_DATE.match(text)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
974 次 |
| 最近记录: |