拉手网Python程序员面试题
拉手网Python程序员面试题,有用人用10行代码解决,有人用了一行代码解决是多么牛的赶脚。有种被秒杀的赶脚,题目在此https://www.jinshuju.net/f/EGQL3D
dic={}
def num(aa,bb,cc):
if aa%bb==0:
return cc
else:
return aa
def output(*ls):
d=''
if ls.count(ls[0])==len(ls):
return ls[0]
for i in ls:
if i in dic.values():
d=(d+i)
return d
def execute(a,b,c,number=101):
global dic
dic=dict(zip([a,b,c],['Fizzy','Whizzy','Duzzy']))
for i in range(1,number):
print output(num(i,a,dic[a]),num(i,b,dic[b]),num(i,c,dic[c]))
if __name__=='__main__':
execute(3,5,7)
上面网址已经找不到:
根据上面程序的意思(啊啊他写的逻辑好乱!!),我自己写了一个,虽然没有十行解决,但我觉得我写的比他思路要清晰多了…….
def fun(x,y,z):
dic = dict(zip([x,y,z],['Fizzy','Whizzy','Duzzy']))
L = []
list = [x for x in range(1,101) if x%3 == 0 or x%5 == 0 or x%7 == 0]
global dic
for i in range(1,101):
str = ''
if i in list:
if i % x == 0:
str += dic[x]
if i % y == 0:
str += dic[y]
if i % z == 0:
str += dic[z]
L.append(str)
else:
L.append(i)
return L
for x in fun(3,5,7):print(x)
本文解析了一道拉手网Python程序员面试题,通过对比两种解决方案,一种使用多个函数和复杂的逻辑,另一种则更为简洁明了。文章还提供了一个清晰易懂的实现示例,帮助读者理解如何用Python优雅地完成任务。

被折叠的 条评论
为什么被折叠?



