Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 为什么我的代码运行在无限循环中? 导入系统 关键字=原始输入(“输入关键字”)。下限() 关键字短语=原始输入(“输入关键字短语”)。下限() 关键字短语长度=len(关键字短语) 字符位置=[] 对于关键字中的字符: 如果“abcdefghijklmnopqrstuvxyz”中的字符: position=“abcdefghijklmnopqrstuvxyz”。查找(字符)+1 字符位置。追加(位置) 周期=-1 新建_关键字=“” 如果len(关键字)_Python 2.7_Loops - Fatal编程技术网

Python 2.7 为什么我的代码运行在无限循环中? 导入系统 关键字=原始输入(“输入关键字”)。下限() 关键字短语=原始输入(“输入关键字短语”)。下限() 关键字短语长度=len(关键字短语) 字符位置=[] 对于关键字中的字符: 如果“abcdefghijklmnopqrstuvxyz”中的字符: position=“abcdefghijklmnopqrstuvxyz”。查找(字符)+1 字符位置。追加(位置) 周期=-1 新建_关键字=“” 如果len(关键字)

Python 2.7 为什么我的代码运行在无限循环中? 导入系统 关键字=原始输入(“输入关键字”)。下限() 关键字短语=原始输入(“输入关键字短语”)。下限() 关键字短语长度=len(关键字短语) 字符位置=[] 对于关键字中的字符: 如果“abcdefghijklmnopqrstuvxyz”中的字符: position=“abcdefghijklmnopqrstuvxyz”。查找(字符)+1 字符位置。追加(位置) 周期=-1 新建_关键字=“” 如果len(关键字),python-2.7,loops,Python 2.7,Loops,上面是我的代码,当输入关键字如“cat”和关键字短语如“computing”时,代码应将“cat”的字母打印到单词computing的长度。但是,这会运行到一个循环中您有一个循环,而len(关键字)

上面是我的代码,当输入关键字如“cat”和关键字短语如“computing”时,代码应将“cat”的字母打印到单词computing的长度。但是,这会运行到一个循环中

您有一个循环
,而len(关键字)
的迭代依赖于
关键字
关键字
,但是您不会在循环体中更改这些变量,因此一旦输入,循环条件将始终计算为
,所以你有一个无限循环。

简而言之,在这个循环中:

import sys
keyword = raw_input("enter a keyword ").lower()
key_phrase = raw_input("enter a key phrase").lower()
key_phrase_length = len(key_phrase)

character_position = []
for character in keyword:
    if character in "abcdefghijklmnopqrstuvwxyz":
        position = "abcdefghijklmnopqrstuvwxyz".find(character) + 1
        character_position.append(position)


cycle = -1
new_keyword = ""
if len(keyword) < len(key_phrase):
    while len(keyword) < len(key_phrase):

        cycle += 1
        if cycle >= len(keyword):
                cycle = 0
        new_keyword = new_keyword + keyword[cycle]
        sys.stdout.write(new_keyword[cycle])
while len(关键字)
您从不更新或更改
关键字
关键字短语
。由于它们从不更新或更改,因此将永远不会满足转义条件

while len(keyword) < len(key_phrase)