我有一个字符串myString
:
myString = "alpha beta gamma"
我想把myString
分成三个词:
myWords = myString.split()
然后,我可以单独访问每个单词:
firstWord = myWords[0]
secondWord = myWords[1]
thirdWord = myWords[2]
我的问题:如何将这三个单词作为split()
函数的输出分配到一行?例如,类似于:
[firstWord secondWord thirdWord] = myString.split()
Python2.7的语法是什么?
你所尝试的几乎完全有效:
演示:
为了进一步阐述皮耶特先生的回答和辩方提出的comment
如果
str.split()
返回的值超过您允许的值,它将与ValueError: too many values to unpack
断开。在Python 3中,您可以这将把所有额外的内容都转储到名为
extraWords
的列表中。但是,对于Python 2,它会变得更加复杂,不像this question and answer中描述的那样方便。或者,您可以更改存储变量的方式,并使用理解功能将其放入字典中。
这样做的好处是避免将所有值一起解包(我认为这在Python 2中并不理想)。但是,这可能会混淆变量名,因为它们现在被称为
words[0]
,而不是更具体的名称。如果您要制作一个列表,上面的答案也是正确的:
相关问题 更多 >
编程相关推荐