写在前面:
话说那是很久以前,代码交付按行收费,于是程序员们尽量写出更多行的代码。但自古以来就是道高一尺魔高一丈,于是兴起另一个职业---缩行师。缩行师的职责,就是去掉程序猿代码里多余的代码,将代码的行数尽量降到最低。剥削和反剥削的阶级斗争从来就没有停止过,直到代码交付不再以行数计费。
至于有兴趣了解缩行师职业的人,可以戳一下这里:缩行师职业简介
现如今,天下大势以定,若是能穿越从前,我一定能当一名高级缩行师,下面听我慢慢道来。
高级缩行师实践指南:
第一回合
程序猿提交代码
# 将列表中每个数+1,返回新的List
def add_one(data):
data_new = []
for i in data:
new = i+1
data_new.append(new)
return data_new
缩行师说:
def add_one(data):
return [i+1 for i in data]
第二回合
程序猿提交代码
# 条件判断
def case(condition):
if condition:
return 'result_true'
else :
return 'result_false'
缩行师说
def case(condition):
return 'result_true' if (condition) else 'result_false'
第三回合
程序猿提交代码
def get_content(content):
content = content.decode('utf8')
beautiful = BeautifulSoup(content,'lxml')
divs = beautiful.find_all('div')
contents_div = []
for div in divs:
cont = div.contents
if len(cont) == 1:
contents_div.append(cont[0])
result = ''
for cont in contents_div:
result += cont
return result
缩行师说
def get_content(content):
''.join([div.contents[0] if(len(div.contents)==1) else '' for div in BeautifulSoup(content.decode("utf8"),'lxml').find_all('div')])
后面想起来了慢慢更新……我是占位符占位符占位符……