For 循环逐个显示所有步骤,而不是直接显示最后一个步骤

我一直在学习Python从这个YouTube视频Python教程初学者通过用Mosh编程。

在视频中(2:26:28),讲师进行了一个练习,编写一个程序,将电话号码中的数字转换为单词。我试着这样做。我目前正在Mac上使用Pycharm与Python 3.8.2。

这是我写的:

number = input('Phone: ')

number_in_words = {

    '1': 'One',

    '2': 'Two',

    '3': 'Three',

    '4': 'Four'

}

final_output = ''

for words in number:

    final_output += number_in_words.get(words) + ' '

    print(final_output)

这是输出:


Phone: 1234

One 

One Two 

One Two Three 

One Two Three Four 

但是,我只想要终端上的最后一行,而不是其余的。


qq_笑_17
浏览 160回答 4
4回答

慕森王

不要缩进最后一行for words in number:    final_output += number_in_words.get(words) + ' 'print(final_output)现在它位于循环之外,将打印一次。

呼啦一阵风

简单地说,你必须在循环的主体外部调用print()语句,如下所示:number = input('Phone: ')number_in_words = {    '1': 'One',    '2': 'Two',    '3': 'Three',    '4': 'Four'}final_output = ''for words in number:    final_output += number_in_words.get(words) + ' 'print(final_output)输出:Phone: 123                                                                                                            One Two Three

有只小跳蛙

请尝试以下操作:for words in number:    final_output += number_in_words.get(words) + ' 'print(final_output)

慕虎7371278

您的 print() 不应处于循环中,    final_output += number_in_words.get(words) + ' 'print(final_output)`
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python