1

昇順と降順の数字が混在するリストを生成しようとしています。

たとえば、あなたが持っているとしましょうn=5。あなたが持っているものに基づいてリスト/配列を生成したいn:

[0,1,2,3,4,3,2,1,0]

リスト内包表記を使用します。

私はこれをやってみました:

print [[i+j] for i in range(n)for j in range(n,-1,-1)]

しかし、私はそれを正しく理解できないようです。

4

3 に答える 3

2
In [27]: n = 5

In [28]: [n-1-abs(i-n+1) for i in range(n*2-1)]
Out[28]: [0, 1, 2, 3, 4, 3, 2, 1, 0]

アップデート

こっちの方がわかりやすいかも

In [36]: [n-abs(i) for i in range(-n,n+1)]
Out[36]: [0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0]
于 2013-10-29T02:44:09.873 に答える