Python 3字符串取第二个单词

4
我正在尝试用Python制作一个终端,可以在其中输入命令并执行特定操作。我想将变量分配给从输入中获取的字符串,如下所示:
cmd = input("输入您的命令:")
假设我正在尝试创建一个日志命令,我会键入'log primary {text}'(它将在主要字典中存储一个字符串)或'log secondary {text}'(它将在次要字典中存储字符串)。
我想能够将变量分配给命令字符串中的第二个单词。当我键入'log primary'时,我只想将变量分配给单词'primary'。
换句话说,我如何将变量分配给字符串的第二个和第三个单词?希望我的问题清晰明了。

cmd.split(' ') 会创建一个单词列表。您可以从中提取单个单词。 - Klaus D.
2个回答

10
var = cmd.split(" ")[1]

在这里,我们只是将字符串按照空格符进行分割成列表,然后对列表进行索引操作。

就是这样!


Python中的索引从零开始。如果存在前导空格,索引就必须更改(假设没有任何前导空格,但为了更安全起见,可以使用正则表达式或先对字符串进行strip操作)。 - Jan Christoph Terasa

2

您可以输入以下内容:

cmd = input('Enter command:')
dictionary = cmd.split(' ')[1]
text = cmd.split(' ')[2:]
dictionary变量将包含字典名称,text将包含要传递到字典中的文本。
PS:split命令会在特定字符处拆分字符串。例如:
text = 'Hello world!'
text = text.split('o')
print(text)

将打印:

['hell', ' w', 'rld!']

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接