2
num = list(str(1234567))

for n1 in num:
    print(n1)
    for n2 in reversed(num):
        print('\t', n2)

各反復で、最初のループから最初の数字を出力し、逆のループからすべての 7 を出力します。逆ループのすべての数字ではなく、最後の (つまり最初の) 数字のみを印刷するにはどうすればよいですか?

ありがとう

4

5 に答える 5

7

最も簡単な方法は、フォワード リストとリバース リストを一緒に圧縮することです。

for n1, n2 in zip(num, reversed(num)):
    print(n1, '\t', n2)
于 2010-01-19T16:39:16.697 に答える
1

これは弱い試みです。これはあなたが探しているものですか?

 for idx,i in enumerate(x):
     print(i,"\t",x[-(idx+1)])
于 2010-01-19T16:38:49.597 に答える
1

こんな感じですか?

num = list(str(1234567))
for i in range(len(num)):
    print(num[i], '\t', num[-(i+1)])

出力は次のとおりです。

1       7                       
2       6                       
3       5                       
4       4                       
5       3                       
6       2                       
7       1  
于 2010-01-19T16:39:07.520 に答える
0

2 番目のリストを作成する必要があります。

>>> num_rev = num[:]
>>> num_rev.reverse()
>>> num_rev
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

次に、次のようにします。

>>> for n1,n2 in zip(num,num_rev): 
...     print(n1, n2)
... 
0 9
1 8
2 7
3 6
4 5
5 4
6 3
7 2
8 1
9 0
于 2010-01-19T16:40:46.850 に答える