2017-04-15 35 views
0

因此,我的代码的第一部分所做的就是执行行中的每个单词,然后再执行14次。我需要它一次垂直执行一行一行。第二部分,我承认我没有太多进展,它只是打印报价,但我需要它一次垂直打印每个字母。如何在verticaly中一次执行一行一个字并在python中水平执行一行一行字?

Quote = "It was a bright cold day in April and the clocks were striking thirteen." 

for letter in Quote: 
    print Quote[0:2] 
    print Quote[3:6] 
    print Quote[7:8] 
    print Quote[9:15] 
    print Quote[16:20] 
    print Quote[21:24] 
    print Quote[25:27] 
    print Quote[28:33] 
    print Quote[34:37] 
    print Quote[38:41] 
    print Quote[42:48] 
    print Quote[49:53] 
    print Quote[54:62] 
    print Quote[63:71] 

print "-----" 
print Quote 

回答

1

这是因为for letter in Quote通过Quote每个字符迭代。对于每次迭代,您都手动打印每个字Quote

如果你要打印的Quote每个单词,那么你可以做,而不是:

for word in Quote.split(): 
    print word 

现在你可以打印单词的每个字母:

for word in Quote.split(): 
    print "Word: " + word 
    for letter in word: 
     print letter, 
    print "" 

print letter,后面的逗号。这使得不添加换行符。您也可以使用sys.stdout.write(letter)

1

你应该试试这个

for word in Quote.split(): 
    print word