如何使用 for 循环打印列表的索引 0?

How to print an index 0 of a list, with for loop?

为什么此代码不return(或打印)列表的 0 索引?

N = int(input())

letters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']

for i in range(N):

    print(letters[i]*i)

输出:应该是:

A
BB
CCC
DDDD
EEEEE
FFFFFF
GGGGGGG

但是我得到这个,没有“A”:

B
CC
DDD
EEEE
FFFFF
GGGGGG

因为列表不会打印 0 次。你需要加1.

N = int(input())

letters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']

for i in range(N):
    print(letters[i]*(i+1))

因为我从零开始计数。

如果您键入:

for i in range(10):
print(i)

你会看到:

0
1
2
3
4
5
6
7
8
9

如果您想从 1 数到 N 而不是 0 到 N-1,请输入:

print(letters[i]*(i+1))

i从0开始。 所以你需要:

for i in range(N):
    print(letters[i]*(i+1))

for i in range 从 0 开始。然后尝试执行

print(letters[i]*i)

在索引 0 处,这转换为

print(letters[0]*0)

由于结果字符串乘以零,所以它什么都不输出。正如其他评论者指出的那样,将 i 更改为 i + 1 将解决此问题。