Python Regex错误:“无法分配给运算符”

时间:2013-11-03 11:53:09

标签: python python-2.7

我正在尝试使用Python和NLTK,但似乎无法使用正则表达式而无法找出原因。

>>> import nltk
>>> import re
>>> words = nltk.corpus.words.words('en')
>>> ed-words = [w for w in words if re.search('ed$', w)]
SyntaxError: can't assign to operator

2 个答案:

答案 0 :(得分:1)

这里的问题是ed-words:在Python中,-符号表示减号,因此它正在尝试处理ed - words = ...,这是非法的。

答案 1 :(得分:1)

正如其他人所提到的,在大多数编程语言中,在变量名中使用-几乎是非法的。

在Python中,您可以使用下划线:

ed_words = [w for w in words if re.search('ed$', w)]

请参阅Naming Conventions