如何将类变量传递给类方法?我编写了一个程序,以递归方式交换字符串的每个第二个字符。
由于我无法将self.inputstring作为参数传递,所以我决定使用嵌套函数。
有更好的解决方案吗?是否可以使用类变量作为参数?
class Swap(object):
def __init__(self, astring):
self.acc = ""
self.count = 1
self.inputstring = astring
self.checkstring = astring
def swap2(self):
string = self.inputstring
def swaphelper(string):
if len(string) == 2:
self.acc = self.acc + string[1] + string[0]
self.count = self.count + 2
if len(self.checkstring) == len(self.acc):
return self.acc
if len(self.checkstring) != len(self.acc):
return swaphelper(self.inputstring[self.count-1:self.count+1])
return swaphelper(string)
c = Swap("I'm a string")
d = c.swap2()
答案 0 :(得分:0)
您可以在实例方法中访问类实例变量,如此。
class Swap(object):
def __init__(self, astring):
self.inputstring = astring
def swap(self):
s = self.inputstring