如果代码中,if 语句,后面elif 过多,完全可以用字典来优化代码。
def response(method):
if method == "POST":
return "/post"
elif method == "GET":
return "/get"
elif method == "HEAD":
return "/head"
return "/"
def resposne_by_dict(method_dict, method):
'''用字典代替if 语句 '''
return method_dict.get(method, "/")
if __name__ == '__main__':
method_dict = {
"POST": "/post",
"GET": "/get",
"HEAD": "/head",
}
method = "POST"
print(response(method))
print(resposne_by_dict(method_dict, method))
在类中的第二种运用
method_dict = {
'id': self.driver.find_element_by_id,
'name': self.driver.find_element_by_name,
'className': self.driver.find_element_by_class_name,
'xpath': self.driver.find_element_by_xpath,
'link_text': self.driver.find_element_by_link_text,
'css_selector': self.driver.find_element_by_css_selector,
'names': self.driver.find_elements_by_name,
'classNames': self.driver.find_elements_by_class_name,
'xpaths': self.driver.find_elements_by_xpath,
'css_selectors': self.driver.find_elements_by_css_selector,
}