Discuss / Python / 看了大家的答案才发现自己做的太复杂了

看了大家的答案才发现自己做的太复杂了

Topic source

天命破凰

#1 Created at ... [Delete] [Delete and Lock User]

import itertools

def pi(N): jishu = itertools.count(1,2)
qianxiang = itertools.takewhile(lambda x : x < 2*N,jishu) zhengfu = itertools.cycle([4,-4]) l = list(zip(zhengfu,qianxiang)) result = 0 for i in range(N): result += l[i][0]/l[i][1] return result takewhile好像只能当次有效,要用变量赋值保存下来


  • 1

Reply