Kazuma 是项目的研发代号。
正则表达式
规定动作
1 2
| pattern = re.compile(r'REGEX') result = pattern.findall(str)
|
常用语法
字符 |
描述 |
* |
匹配前面的子表达式零次或多次。 |
+ |
匹配前面的子表达式一次或多次。 |
? |
匹配前面的子表达式零次或一次。 |
? |
当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串“oooo ”,“o+? ”将匹配单个“o ”,而“o+ ”将匹配所有“o ”。 |
\s |
匹配任何空白字符。 |
\S |
匹配任何非空白字符。 |
常用链接
回溯算法
- 将结果添加到
result
列表时,应添加 route
列表的副本 route[:]
。
1
| self.result.append(arranged_XstuffsX[:])
|
在列表中搜索某项
在字典组成的列表中凭借字典某一个 key 的 value 找元素
通过 x for x in LIST if CONDITION
生成一个列表,取第一项即可。
1
| result_dict = [i for i in all_i if i['id'] == target_id][0]
|
考虑空列表情况以及避免生成一个列表浪费时间,改用迭代器配合 next()
函数的办法。
1
| result_dict = next((item for item in all_objs if item['id'] == target_id), None)
|
来自 StackOverflow。