最近我一直在玩弄列表解析,但我已經到了一個讓我感到困惑的地步。目前,我有這樣的:Double List Comprehensions
k = range(2,11)
N = [2**k[u] for u in range(9)]
i = [range(N[v] + 1) for v in range(9)]
xCoord = [0.5*math.cos((2*(math.pi)*i[n][j])/N[n]) for n in range(9) for j in range(len(i[n])]
這給了我一個普通列表,而不是一個嵌套列表,這是我想什麼。我想要一個嵌套列表,每個值爲N的列表。
只是爲了澄清,如果我的N = 4,我想生成一個包含對應於i = 0的點的x座標的列表,1,2,3,4。對於N = 8,i = 0,1,2,3,4,5,6,7,8等。
我想要做的是做一個列表沿着一個半徑爲1/2的圓的N + 1個點,然後我可以使用它來計算近似於圓的多邊形的路徑長度。
謝謝
謝謝!我現在明白了很多。我相信有更有效的方法來解決這個問題,但這是一個特別強調列表的家庭作業問題。 (我也是Python的新手!) – Bailey 2014-09-25 10:35:10
...和公式是......'def perimeter_of_polygon(r,n):return n * r * math.sqrt(2-2 * math.cos(2 * math.pi/n))' – gboffi 2014-09-25 10:54:04
@gboffi這是一樣的,但更長。注意1-cos(t)= 2sin(t/2)^ 2 – 2014-09-25 11:10:25