所以我用C写了一段代码,输出如下:
代码:
scanf("%ld",&N);
long long A[N];
for(i=1;i<=N;i++)
scanf("%lld", &A[i]);
for(i=1;i<N;i++)
for(j=i;j<=N-1;j++) {
printf("%d %d\n", A[i], A[j+1]);
输入:
5
1 2 3 4 5
输出:
1 2
1 3
1 4
1 5
2 3
2 4
2 5
3 4
3 5
4 5
如何使用Python3.7.x获得相同的输出?你知道吗
试过:
A = [1,2,3,4,5]
for i in range(len(A)):
for j in range(len(A)):
try:
print(A[i],A[j+1])
except IndexError:
pass
尝试输出:
1 2
1 3
1 4
1 5
2 2
2 3
2 4
2 5
3 2
3 3
3 4
3 5
4 2
4 3
4 4
4 5
5 2
5 3
5 4
5 5
这是我得到的输出,它只是遍历每个循环,打印出值,从而得到重复的对。你知道吗
感谢您的帮助,谢谢!你知道吗
您可以使用与
c
代码相同的逻辑,这意味着j
将从i
开始:另一个优雅的解决方案是使用
itertools
模块:不是这样做的:
你应该尽可能地复制C循环。为此,[Python 3. Docs]: Built-in Functions - enumerate(iterable, start=0)很方便(允许处理元素索引)。此外,还使用了序列切片。你知道吗
相关问题 更多 >
编程相关推荐