基本上我希望用户输入中的每个新单词都在下一行,所以像“Hello World”这样的句子将显示为
"Hello"
"World"
这是我目前的剧本:
EnterString = input("Enter the first word of your sentence ")
e =(EnterString)
e2 =(e.split(" "))
print (e2)
哪会得到结果:
['Hello', 'world']
如何让Python检测空格并相应地对齐单词?
提前致谢。
答案 0 :(得分:2)
当您在空格上分割输入时,您将获得每个“新”单词的列表 然后,您可以使用循环打印出每个。
for word in e2:
print(word)
答案 1 :(得分:2)
print("\n".join(e2))
答案 2 :(得分:0)
根据您的print
语法以及使用input
而非raw_input
的事实来判断,我相信这是Python 3.x.如果是这样,那么你可以这样做:
print(*e2, sep="\n")
参见下面的演示:
>>> EnterString = input("Enter the first word of your sentence ")
Enter the first word of your sentence Hello world
>>> e = EnterString
>>> e2 = e.split()
>>> print(*e2, sep="\n")
Hello
world
>>>
以下是*
的{{3}}。
此外,str.split
默认分割为空格。所以,您只需要e.split()
。
但是,如果您实际上是在Python 2.x(即Python 2.7)上,那么您还需要将此行放在脚本的顶部:
from __future__ import print_function
以上内容将使print
与Python 3.x中的一样,允许您在我演示时使用它。