Python 而循环不返回任何内容

Python 而循环不返回任何内容,python,python-2.7,Python,Python 2.7,当列表中包含“paige”时,函数应打印一个列表-顶部列表。然而,它什么也不返回。哪里出了问题 另外,str(list)是否是在结果中存储输出的最佳方法 def addingpaige(s): list = ["paige", "peter", "eric"] result = "" while "paige" and "peter" in list: result = result + str(list) return result print addi

当列表中包含“paige”时,函数应打印一个列表-顶部列表。然而,它什么也不返回。哪里出了问题

另外,
str(list)
是否是在结果中存储输出的最佳方法

def addingpaige(s):
   list = ["paige", "peter", "eric"]
   result = ""
   while "paige" and "peter" in list:
        result = result + str(list)
   return result
print addingpaige(["paige", "peter", "eric"])
  • 似乎您正在将list
    [“paige”、“peter”、“eric”]
    作为
    addingpaige()
    的参数,但没有对它做任何操作,而是在该函数中定义了
    list

  • 而列表中的“paige”和“peter:
    不是这样工作的。相反,测试列表中的“paige”,然后测试列表中的“peter”。换句话说,当列表中的“paige”和列表中的“peter”时,这将变成

  • 在本例中,while条件始终为
    True
    ,因此这将为您提供一个无限循环。只有一个while条件可以在迭代之间改变,和/或在while循环中有一些东西可以打破它

  • list
    是一个关键字,因此可以为列表选择其他名称

  • 不过,我不清楚你想做什么。就目前而言,代码是荒谬的,因为它包含一个无限循环。根据什么条件,
    addingpaige()
    应该打印什么

  • 似乎您正在将list
    [“paige”、“peter”、“eric”]
    作为
    addingpaige()
    的参数,但没有对它做任何操作,而是在该函数中定义了
    list

  • 而列表中的“paige”和“peter:
    不是这样工作的。相反,测试列表中的“paige”,然后测试列表中的“peter”。换句话说,当列表中的“paige”和列表中的“peter”时,这将变成

  • 在本例中,while条件始终为
    True
    ,因此这将为您提供一个无限循环。只有一个while条件可以在迭代之间改变,和/或在while循环中有一些东西可以打破它

  • list
    是一个关键字,因此可以为列表选择其他名称


  • 不过,我不清楚你想做什么。就目前而言,代码是荒谬的,因为它包含一个无限循环。根据什么条件,
    addingpaige()
    应该打印什么

    “paige”和“peter”
    实际上计算为
    “peter”
    。这段代码实际上是这样说的:
    字符串
    “peter”
    出现在列表中
    保持循环。

    “paige”和“peter”
    实际上计算为
    “peter”
    。这段代码实际上是这样说的:
    字符串
    在列表中出现
    时保持循环。

    而在lst中出现“paige”而在lst中出现“peter”
    。单独测试每个安全壳该如何终止?您希望输出什么?由于
    列表
    在循环体中的任何地方都没有修改,因此它将是一个无限循环。
    而lst中的“paige”和lst中的“peter”则是
    。单独测试每个安全壳该如何终止?您希望输出是什么?由于
    列表
    在循环体的任何地方都没有修改,因此它将是一个无限循环。