如何扭转字符串中使用名单蟒蛇

0

的问题

我找到这段代码相关问题有关扭转串蟒蛇,但有人可以请解释它在普通的英语吗? 请注意,我仍然python和只学会了怎么使用,同时循环和职能,昨天:/使我不能真正把这变成的话我自己的原因我的理解并不存在。

不管怎么说在这里是代码:

def reverse_string(string):
    new_strings = [] 
    index = len(string) 
    while index:  
        index -= 1                       
        new_strings.append(string[index]) 
    return ''.join(new_strings) 

print(reverse_string('hello'))
list python string
2021-11-24 04:07:22
3

最好的答案

4

当然知道它做什么,你可图的代码。 在 while 环, index 值开始从字符串的结束和数量降低到0。 在每一个步骤,它增加了那个角色(再次,从开始结束),以列表的最后它是建筑。 最后,它结合了该名单成一串。

所以,给予'a b c d',该清单得到建:

'abcd'  #3 -> ['d']
'abcd'  #2 -> ['d','c']
'abcd'  #1 -> ['d','c','b']
'abcd'  #0 -> ['d','c','b','a']
2021-11-24 04:10:52
1

好吧基本上,获得长串的 len 法。 这将会返回一个整数值代表了多长串。

他们然后用此字符串的长度和有效地循环下降到零,在一个 while 循环。 使用 -= 操作员。

每次迭代的(这意味着每次循环)这将需要远离长,直至达到零。

所以让我们使用 hello 作为一个例子输入和经过这一起。

reverse_string('hello') 是如何我们会打电话的方法,这样做的 print 声明你的代码。

我们然后进入功能,并执行这些步骤:

  1. 我们创建了一个新的空阵列叫 new_strings.
  2. 我们找到长的初步字符串 hello 这回我们5. 意思是现在 index 等于5。
  3. 我们创造一个同时循环持续下去,直到 index 是没有更多的使用 while(index): -一段时间的循环如此对待一个 0 值为 falsy 并将终止在达到这一点。 因此当 index0 循环就会停止。
  4. 第一线的这个循环的执行 index -= 1 这是一样写 index = index - 1 所以第一个循环过我们得 index = 5 - 1 然后现在 index 等于 4.
  5. 因为蟒蛇然后让我们的访问 character 一个字符串中使用 string[index] (并且因为这种作品,从0->n)执行 hello[4] 事实上将给予我们的性格 o.
  6. 我们还追加这个字阵列 new_strings 意思,因为我们去过的迭代,以达到零,这将增加每个角落后于这一系列给我们 ['o', 'l', 'l', 'e', 'h']
  7. 由于指数的现在是零,我们离开的环和执行 join 操作上的阵又一次创建一串。 该命令 ''.join(new_strings) 意味着我们希望加入阵列我们以前有没有一个分离器。 如果我们做了 '#'.join(new_strings) 我们不会得到 o#l#l#e#h 而不是的 olleh.

我希望这个答案给你一些澄清。

2021-11-24 04:20:49

啊这阐明了我的问题的回合,最后一行,我正要求。 谢谢你的解释:)
user17415509

不用担心。 我很高兴我可能服务。 Tim Roberts是正确的,虽然许多这些东西可以理解要通过的基本原则。 我建议,每当你偶然发现的码你不明白,尽量查找语文文件的方法/操作员。 甚至如果你不了解其在开始的时候,越来越成习惯了这一点,并试图理解它将成为你很好向前迈进。
Johan Jarvi

作为一个例子 str.join()文件 的一部分Python 内置类型的文件 可以证明是非常非常有用的,后在但我可以明白它将如何似乎压倒性的和令人困惑,在这一点上,但它是非常好的习惯找到这些资源,并学习如何解释它们。
Johan Jarvi
0

当然,这是非常简单的程序。 你应该等都指串的方法和串索引python中得到明确的想法。 让我解释这个在deatial.

print(reverse_string('hello'))//打印功能是打电话的另一个功能 reverse_string并通过参数"你好"。

def reverse_string(string)://参数"hello"存在的可变 串在reverse_string功能。

**new_strings = []** // created a new empty list
**index = len(string)** // len function returns the length of the argument 
                           passed to the function. len("hello")=5 and assigned 
                           to index. index=5.

虽然索引: //while循环exicute,直至情况得到错误的。在此 例的时候指数=0.在串度从0开始。对于 例。 string[0]=h,string[1]=e、串[2]=l,string[3]=l,string[4]=o.

    **index -= 1**  //Note the last letter 'o' is in string[4] and the len 
                      function returned 5 so we need to decrement index variable 
                      to 4 so that it will pointing to string[4]=o                     
  

new_strings.append(string[指标]) //追加string[4]这是o等等... 返回"。加入(new_strings)

2021-11-24 05:28:44

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................