以下代码迭代并输出香蕉,如何更改它以反转输出?

Posted

技术标签:

【中文标题】以下代码迭代并输出香蕉,如何更改它以反转输出?【英文标题】:The following code iterates and output banana, how can i change it to reverse the output? 【发布时间】:2021-11-09 00:15:29 【问题描述】:

我想修改这段代码,输出是字符串的反转“banana”

index = 0
fruit = "banana"
while index < len(fruit):
    letter = fruit[index]
    print (letter)
    index = index + 1

当前输出

b
a
n
a
n
a

预期的输出

a
n
a
n
a
b

【问题讨论】:

你了解letter = fruit[index] 的作用吗?您将如何修改代码以首先选择fruit最后一个字母,然后转到前一个字母?如果你不这样做,我建议你重做一个关于字符串索引的教程。 谢谢。我想到了。 @PranavHosangadi 【参考方案1】:

这行得通

fruit = "banana"
index = len(fruit)
while index > 0:
    letter = fruit[index-1]
    print (letter)
    index = index -1

但我强烈建议您检查并了解字符串索引的工作原理。

【讨论】:

【参考方案2】:
fruit = "banana"
rev_fruit = fruit[::-1]
print(rev_fruit)

#output: ananab

【讨论】:

【参考方案3】:

试试这个方法。在 Python 中,-1 表示最后一个位置,因此单词(负数)的 len 是切片的第一个位置。

由于 Python 范围不包含在内,因此您必须在此场景中添加 -1。否则它将打印“anana”。

最后,我们要从-1到-6,所以增量必须是-1。

word = "banana"
start = -1
end = (len(word) * -1) - 1
increment = -1

print(word[start:end:increment])

【讨论】:

以上是关于以下代码迭代并输出香蕉,如何更改它以反转输出?的主要内容,如果未能解决你的问题,请参考以下文章

206. 反转链表简单迭代递归

206. 反转链表简单迭代递归

迭代之“反转链表”——剑指 Offer 24. 反转链表

迭代之“反转链表”——剑指 Offer 24. 反转链表

LeetCode 206. 反转链表(迭代,双指针,Java)

在循环内创建的变量在 C 中的迭代期间更改值