"继续"一个for循环

时间:2018-03-28 17:04:26

标签: python python-3.x

我有一个包含3个音节的随机单词列表。我使用了3个for循环,每个音节一个循环。但我希望程序能够从特定的位置开始创建音节。

在这个例子中,我使用3作为第一个音节的位置,第二个音节中的4个,第三个音节中的8个。

我希望程序打印单词oubooubuoucaouce,...但这不会发生什么。它只打印一个数字而不是字符串的位置,这会导致错误。我该如何解决这个问题?

letrasRandom = ('a','e', 'i', 'o', 'u', 'ba','be','bi','bo','bu','ca','ce','ci','co','cu','da','de','di','do','du','fa','fe','fi','fo','fu','ga','ge','gi','go','gu','ha','he','hi','ho','ia','ie','io','iu','hu','ja','je','ji','jo','ju','ka','ke','ki','ko','ku','la','le','li','lo','lu','ma','me','mi','mo','mu','na','ne','ni','no','nu','pa','pe','pi','po','pu','qu','ra','re','ri','ro','ru','sa','se','si','so','su','ta','te','ti','to','tu','va','ve','vi','vo','vu','wa','we','wi','wo','wu','xa','xe','xi','xo','xu','za','ze','zi','zo','zu', 'cha','cou','che','chi','cho','chu','lha', 'lhe', 'lhi','lho', 'lhu', 'nha','nhe','nhi','nho','nhu','rra','rre','rri','rro','rru','ssa','sse','ssi','sso','ssu','qua','que','qui','quo') 
while True:
    for x in letrasRandom:
        x = 3
        for y in letrasRandom:
            y = 4
            for z in letrasRandom:
                z = 8
                palavra = (x+y+z)
                print(palavra)

欢迎任何提示或解决方案。

1 个答案:

答案 0 :(得分:3)

如果我理解正确,你基本上希望每个循环从不同的位置开始。在这种情况下,使用切片(letrasRandom[3:])来实现此目的:

In [23]: letrasRandom =('a','e', 'i', 'o', 'u', 'ba','be','bi','bo','bu','ca','ce','ci','co','cu','da','de','di','do','du','fa','fe','fi','fo','
    ...: fu','ga','ge','gi','go','gu','ha','he','hi','ho','ia','ie','io','iu','hu','ja','je','ji','jo','ju','ka','ke','ki','ko','ku','la','le','
    ...: li','lo','lu','ma','me','mi','mo','mu','na','ne','ni','no','nu','pa','pe','pi','po','pu','qu','ra','re','ri','ro','ru','sa','se','si','
    ...: so','su','ta','te','ti','to','tu','va','ve','vi','vo','vu','wa','we','wi','wo','wu','xa','xe','xi','xo','xu','za','ze','zi','zo','zu', 
    ...: 'cha','cou','che','chi','cho','chu','lha', 'lhe', 'lhi','lho', 'lhu', 'nha','nhe','nhi','nho','nhu','rra','rre','rri','rro','rru','ssa'
    ...: ,'sse','ssi','sso','ssu','qua','que','qui','quo') 
    ...: while True:
    ...:     for x in letrasRandom[3:]:
    ...:         for y in letrasRandom[4:]:
    ...:             for z in letrasRandom[8:]:
    ...:                 palavra = (x+y+z)
    ...:                 print(palavra)

给出了输出:

oubo
oubu
ouca
ouce
ouci
ouco
oucu
ouda
oude
.
.
.