Python while循环这段代码实际上做什么

2024-09-28 01:28:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,我只是想了解这个练习:

i=0 
while i<len(seq) :
      j=0 
      while(j<i) :
                print(seq[j:i])
                j = j+1
      i = i+1

我已经运行了代码,但在理解这段代码的实际功能时遇到了一些问题

我知道这是一些基本的东西,但我只是在尝试一种“边做边学”的方法,这让我陷入了困境

先谢谢你


Tags: 方法代码功能lenseqprintwhile新手
3条回答

我会尽力解释的。我假设seq是某个值。 行:while i<len(seq) :告诉python循环,直到i大于或等于len(seq),这是字符串中的字符数

过程-

其中:

  1. j被分配为0
  2. while (j<i):,表示循环直到j大于i
  3. print(seq[j:i])正在切片和索引:print(seq[j:i])打印从索引j到索引i-1的字符
  4. j=j+1意味着重新分配j的原始值加上1

这将持续到j<i。然后,它突破了内部循环。然后,i被重新分配其原始值+1:i=i+1,并且该过程将再次继续,直到i不小于len(seq)

seq="Hello"
i=0 
while i<len(seq) :
    j=0 
    while(j<i) :
        print(seq[j:i])
        j = j+1
    i = i+1

代码正在生成seq的所有可能子序列。第一个while指令选择子序列的结束索引,第二个while指令选择开始索引。开始索引必须低于第二个索引

i = 0

我相信您理解这一部分,但它只是为下一个while循环定义I

while i<len(seq):

这部分代码说只要我<;seq列表的长度,它将继续执行此循环。Seq list也可以是字符串,在这种情况下,每个符号在列表中都有自己的位置

j = 0

为下一个while循环定义j

while j < i:

只要j小于i,这个循环就会运行

print(seq[j:i])

打印“seq”列表中从索引j到索引i的所有内容

j = j + 1
i = i + 1

两个整数加1。许多python程序员也喜欢使用j += 1/i += 1来实现这一点

相关问题 更多 >

    热门问题