【发布时间】:2016-09-23 01:30:50
【问题描述】:
我想在 Python 3 中使用 split() 函数逐行不打印出字符串中的所有单词。
短语是用户的 str(input),它必须打印字符串中的所有单词,无论它的大小。这是我的代码:
my_string = str(input("Phrase: "))
tam = len(my_string)
s = my_string
ch = " "
cont = 0
for i, letter in enumerate(s):
if letter == ch:
#print(i)
print(my_string[cont:i])
cont+=i+1
对此的输出是:
短语:你好,我的朋友
Hello
there
它只打印字符串中的两个单词,我需要它逐行打印所有单词。
【问题讨论】:
-
您的代码是否打印了任何空白行?如果是这样,为什么会这样?提示:仔细观察
cont的值以及它是如何变化的。 -
不,我的意思是在前两个词之后。
-
它只打印两个单词,甚至没有空行
-
这不是我得到的。您是否正在运行上面的代码?您确定
s和my_string相同吗(您不需要为同一个字符串使用两个名称;只使用一个会使代码更清晰)。 -
您还应该看看如果输入中只有一个单词(例如“Hello”)会发生什么。
标签: string python-3.x printing words