classDemo():"""
规则: 命名具象化一些,在后面的使用当中可便于通过命名捕获信息
1、可以使用xxx2yyy的格式
"""deflist_users(self,*args,**kwargs):# 从数据库获取用户信息
users =[]# 1)、定义为id2user,表示key为id,值为user
id2user =dict()for user in users:
id2user[user['id']]= user
# 2)、定义为user2policy,表示key为user,值为policy
user2policy =dict()for user in users:
user2policy[user['id']]= user['policy']
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
4、是否存在函数间关联使用,改动引发!!!
全局搜索该函数或者方法是否有使用。
1
5、是否存在同类问题。
修改问题的时候容易一叶障目,需要修改同类问题,比如命名或者函数抽离等。
1
6、提示是否合理,如果需要提示到页面的数据需要和UI核对。
7、逻辑间增加空行。
8、注意not的用法。
classDemo():deflist_users(self,*args,**kwargs):# 数据库中查询user
users =[]
id2user =dict()for user in users:# 优化前'''
if user['name'].startswith('zhen'):
id2user[user['id']] = user
'''# 优化后ifnot user['name'].startswith('zhen'):continue
id2user[user['id']]= user
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
9、注意if的用法。
classDemo():deflist_users(self,*args,**kwargs):# 数据库中查询user
users =[]
id2user =dict()for user in users:# 优化前if user['name'].startswith('zhen'):if user['age']==18:if user['address']:
id2user[user['id']]= user
# 优化后# 方法一ifall([user['name'].startswith('zhen'),user['age']==18,user['address']]):
id2user[user['id']]= user
# 方法二if user['name'].startswith('zhen')and user['age']==18and user['address']:
id2user[user['id']]= user
classDemo():deflist_users(self, req, params, user_id):# 一行的情况for user in self.query.list_users(self,{'id':",".join(["1","2"])}):pass# 多行的情况
filters ={'id':",".join(["1","2"]),"age":18,"address":"广东省"}for user in self.query.list_users(self, filters):pass