基本上,我的代码格式如下:
class SomeClass():
# RegEx to remove all non-alphanumeric characters from a string
def alphaNum(original):
return str(re.sub(r'[^a-zA-Z0-9]','', original))
# Write to xlsx file =====================================================
def write(self):
#CODE###
uglyString = 'asasdf-)aws'
print alphaNum(uglyString)
#I've also tried calling self.alphaNum(uglyString), for what it's worth
当我从另一个文件调用write时,我得到“global name‘alphaNum’is not defined”(未定义详细信息,但我知道print语句是发生错误的地方)
我很肯定我忽略了一些愚蠢的东西,我(喜欢认为我)对范围有很好的把握,在使用它们之前先定义事物,等等
编辑:
谢谢你们的帮助!最后我把alphaNum()移到了类之外。对于那些感兴趣的人来说,这项研究的实际目的是处理Amazon用于CloudFormation的boto接口的古怪之处。它很乐意返回带有“-”的资产id值,然后抱怨在模板中不能有任何值。这就是生活。。。在
这是因为
alphaNum
是SomeClass
的成员。而且,它不是staticmethod
,所以第一个参数应该是self
。在我真的不知道你为什么要把这些放在一个类中,但它应该看起来像这样:
相关问题 更多 >
编程相关推荐