import re
def check_name(input_string):
regex = re.compile(r'[a-zA-Z.]+\s[a-zA-Z.]+')
result = regex.match(input_string)
# to do
如果把regex的编译写在函式里,代表每次被呼叫它都会被执行一次,我试过呼叫函式1000
0次来测试时间,发现如果把regex = re.compile(r'[a-zA-Z.]+\s[a-zA-Z.]+') 这行写在
函式外,速度会快接近一倍。
可是这样写的话又脱离了函式本身,比方说可能把宣告好要用的各种变量, 然后很多行后
才定义函式,感觉程式行数比较多的话看起来很不直观。
想到一个方法是把regex当作引数传进去,但因为这个 regex是固定的,每次呼叫函式都要
传感觉也不符合函式本身的设计,虽然是可以用默认引数来处理。 但好像还是觉得怪怪的
,想请问这种时候该怎么写会比较符合效率还有整体的结构?