【问题标题】:Get string backwards using for loop, Python使用for循环向后获取字符串,Python
【发布时间】:2025-12-14 12:15:01
【问题描述】:

我发现这个之前在这里回答过,Best way to loop over a python string backwards

我需要使用OP的原始想法,但是我不太明白range函数中stop参数的含义。 0-1 是什么意思?从0-1?这不就是一步吗?

【问题讨论】:

    标签: for-loop python-3.x


    【解决方案1】:

    为什么你不能在之前回答的问题中使用 reversed as accepted?

    但是,要回答您原来的问题:

    0-1其实只是一个数字0-1,等于-1

    范围的文档说明如下:range(start[, end[, step]])。他的电话如下所示:range(len(string)-1, 0-1, -1)

    开始 = len(string)-1,这是字符串的最后一个字母。

    end = 0-1 等于 -1,所以要处理的最后一个字母是 0。请记住,range(0, 3) 实际上会给出0, 1, 2 并在3 之前停止。负数也是如此,它会在-1 之前停止,所以它会在0 停止。

    步骤 = -1。 Step 代表一次要跨过多少个数字。 -1 表示每次将i 降低一个。

    【讨论】:

    • 谢谢。因为 assignment 明确表示不要使用 rerereded。如果 end 是 0-1 表示 -1,为什么不直接输入 -1?
    • @algebr 这个问题,我无法回答。他可能在什么地方看到了它,只是复制粘贴而不考虑其含义。它对程序的执行没有任何影响。 0-1 -1 相同,因此您确实应该输入-1
    【解决方案2】:

    0-1是-1,可以任意写:

    >>> -1
    -1
    >>> 0-1
    -1
    

    让我们尝试一个长度为10的字符串,停止0-1的广告步长-1:

    >>> range(10, 0-1, -1)
    [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
    

    使用 -1 而不是 0-1,您会看到相同的结果:

    >>> range(10, -1, -1)
    [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
    

    -1的步长导致范围倒数,我们试试1步:

    >>> range(10, 0-1, 1)
    []
    

    如果有疑问,请拿出来

    【讨论】: