【发布时间】:2014-10-16 15:46:58
【问题描述】:
我有点不确定如何在课堂之外使用 self。 python中的很多内置方法都使用self作为参数,不需要你声明类;例如,您可以使用string.upper() 命令将每个字母大写,而无需告诉python 使用哪个类。如果我没有很好地解释自己,我在下面包含了我的代码。
def ispalendrome(self): return self == self[::-1]
largestProd = 999**2
largest5Palendromes = []
while len(largest5Palendromes) <= 5:
if str(largestProd).ispalendrome(): largest5Palendromes.append(largestProd)
largestProd -= 1
print largest5Palendromes
注意:我知道还有其他方法可以完成这项任务,但我想知道这是否可行。 TYVM。
【问题讨论】:
-
您的意思是您想知道是否可以向
str()类型添加新方法。答案是:不,不是直接的,你必须子类化。 -
究竟是什么问题或在这里不起作用?
-
@MartijnPieters 很好,他可以使用github.com/clarete/forbiddenfruit ...但只是因为你可以并不意味着你应该
-
@JoranBeasley:哎呀,不知道那个项目。是的,仍然不是我实际使用的东西,但很酷。
标签: python python-2.7 self