2016-03-24 64 views
0

所以我试图让Python 3的以下内容:制作右对齐三角形短语

Please enter a word or phrase: Computer Science 
e 
ce 
nce 
ence 
ience 
cience 
Science 
Science 
r Science 
er Science 
ter Science 
uter Science 
puter Science 
mputer Science 
omputer Science 
Computer Science 

因此,我们必须定义这个函数调用word_processor不带参数。到目前为止,我对此有所了解:

def main(): 
    word_processor() 

def word_processor(): 
    value = input("Please enter a word or phrase: ") 
    word = len(value) 
    for i in range(-1, word + 1): 
     print(' ' * (word - i) * i) 

main() 

每当我运行此代码时,它会告诉我将该短语放在那里,它什么也不做。我不知道我在做什么,我需要一些帮助。如果有人能够帮助,我将非常感激!

+0

我认为你需要使用的raw_input'()','不输入()'。 –

+2

@CarlGroner,'raw_input()'在Python 3中不存在。 –

+0

Doh !,我的错! –

回答

1

它做了什么,它甚至打印了一些东西;但它所打印的只是空白:

print(' ' * (word - i) * i) 

这只是打印(word - i) * i次空格字符,所以你当然看不到任何东西。

为了产生你想要的输出,你需要做这样的事情:

for i in range(1, len(value) + 1): 
    print(value[-i:]) 
+0

这帮了很多!非常感谢! – user6111799