【问题标题】:Reversing a List using an empty list [duplicate]使用空列表反转列表[重复]
【发布时间】:2022-01-21 12:43:29
【问题描述】:

我写了一个小脚本来反转一个列表,但我总是收到一个空的。我知道使用切片符号反转列表的其他方法(例如),但我想知道我的方法有什么问题。提前致谢!

代码:

def reversing(t):
    temp =[]
    for i in t:
        if i<= len(t)-1:
            hew = t[-1-i]         
            temp.append(hew)
        return temp
reversing([10, 11, 12, 13, 14, 15])

【问题讨论】:

  • list(reversed(array)) 是您所需要的。不过,这个问题已经得到了相当多的回答。请在发布问题之前进行搜索!
  • 你正在返回 within 循环。 if 检查基本上没有意义。可能更多……
  • for i in t 表示it 的一个元素,与len(t) 比较是没有意义的。
  • 确实如此。谢谢

标签: python


【解决方案1】:

有一些错误。

首先,我知道你想在循环中做什么,但变量 i 不是你想要的。要将变量 i 用作列表的索引,您应该在此处使用 range()len()

其次,缩进错误。由于return 的位置,您的代码无法循环。

当您使用for loop 并且它按预期工作时,查找错误的简单方法是在循环内使用print(i)。然后,您将很容易发现您所期望的与代码所做的之间的差距。

我修改了你的代码,如下:

def reversing(t):
    temp = []
    for i in range(len(t)):
        print(i) # This will help you understand how this loop works
        if i <= len(t)-1:
            hew = t[-1-i]
            temp.append(hew)

    return temp


result = reversing([10, 11, 12, 13, 14, 15])
print(result)
#[15, 14, 13, 12, 11, 10]

【讨论】:

  • 这很有帮助。
  • @crisbris 那么你可以考虑接受这个作为正确答案。
猜你喜欢
  • 2021-09-06
  • 1970-01-01
  • 1970-01-01
  • 2018-08-24
  • 2020-03-10
  • 2017-02-27
  • 2019-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多