Python 3.x 如何使用Python中的while循环在单独的行上向后打印每个字母的字符串?

Python 3.x 如何使用Python中的while循环在单独的行上向后打印每个字母的字符串?,python-3.x,Python 3.x,我被困在练习题中,我必须在每个字母的背面单独一行打印“香蕉”一词 下面是我的代码:- fruit = "BANANA" index = -1 while len(fruit) > index: letter = fruit[index] print(letter) index = index -1 输出:- A N A N A B 回溯(最近一次呼叫最后一次): 文件“C:/Banana.py”,第4行,在 letter = frui

我被困在练习题中,我必须在每个字母的背面单独一行打印“香蕉”一词

下面是我的代码:-

  fruit = "BANANA"
  index = -1
  while len(fruit) > index:
     letter = fruit[index]
     print(letter)
     index = index -1
输出:-

A

N

A

N

A

B
回溯(最近一次呼叫最后一次):

文件“C:/Banana.py”,第4行,在

letter = fruit[index]
索引器错误:字符串索引超出范围


不需要创建索引。事实上,它会降低代码的效率,并且更容易出现错误(正如您所注意到的)。相反,您可以使用
[::-1]
反转字符串,只需遍历它,因为遍历字符串意味着遍历每个单独的字符:

fruit = "BANANA"

for letter in fruit[::-1]:
    print(letter)

不需要创建索引。事实上,它会降低代码的效率,并且更容易出现错误(正如您所注意到的)。相反,您可以使用
[::-1]
反转字符串,只需遍历它,因为遍历字符串意味着遍历每个单独的字符:

fruit = "BANANA"

for letter in fruit[::-1]:
    print(letter)

您可以告诉
print()
-command()命令为您执行所有这些操作:

print(*("BANANA"[::-1]), sep="\n")
输出:

A
N
A
N
A
B

它反转字符串,使用
*
将字符串分隔为其字符,并将
'\n'
作为任何两个打印元素之间的分隔符。

您可以告诉
打印()
-command()命令为您执行以下操作:

print(*("BANANA"[::-1]), sep="\n")
输出:

A
N
A
N
A
B
它反转字符串,使用
*
将字符串分隔为其字符,并将
'\n'
作为分隔符应用于任何两个打印元素之间