【发布时间】:2019-12-13 07:49:13
【问题描述】:
所以我在 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
如何使用 python 3.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 中,声明为
A[N]的数组有 N 个条目,从A[0]到A[N-1]。访问A[N]会调用未定义的行为,这将很难在 Python 中完全复制... -
print(*(f'{j} {k}' for i, j in enumerate(a) for k in a[i + 1:]), sep='\n')咳嗽 -
Python 方式!
标签: python c loops python-3.7