python怎么重新开始_在python中创建'reset'方法以重置已编辑的字符串

我正在尝试编辑一个字符串并将其重置为原始形式。但我无法弄清楚如何制作'重置'方法。我尝试创建一个名为'original_string'的变量,并在init方法中为它分配周长'string',这样我就可以简单地将self.string分配给original_string。我也尝试在类之外创建'original_string'变量。但是在方法中,似乎我无法访问在该方法之外创建的变量。有关如何创建“重置”方法的任何想法?

class Reverse:

original_string = "Some string that will be edited"

def __init__(self, string):

self.string = string

original_string = string

def __str__(self):

return self.string

def reverseAll(self):

newString = ""

for char in self.string:

newString = char + newString

self.string = newString

def reverseOrder(self):

newString = ""

for word in self.string.split():

newString = str(word) + " " + newString

self.string = newString

def reset(self):

#Reset the edited string back to the original

self.string = original_string

string = Reverse("Trying to edit this string and reset it back to normal.")

print(string)

string.reverseOrder()

string.reverseAll()

string.reset()

print(string)

解决办法:

只需self在最后添加标志即可

In [1]: class Reverse:

...: original_string = "Some string that will be edited"

...:

...: def __init__(self, string):

...: self.string = string

...:

...:

...: def __str__(self):

...: return self.string

...:

...: def reverseAll(self):

...: newString = ""

...: for char in self.string:

...: newString = char + newString

...: self.string = newString

...:

...: def reverseOrder(self):

...: newString = ""

...: for word in self.string.split():

...: newString = str(word) + " " + newString

...: self.string = newString

...:

...: def reset(self):

...: #Reset the edited string back to the original

...: self.string = self.original_string

...:

...: string = Reverse("Trying to edit this string and reset it back to normal.")

...: print(string)

...: string.reverseOrder()

...: string.reverseAll()

...: string.reset()

...: print(string)

...:

...:

Trying to edit this string and reset it back to normal.

Some string that will be edited ```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值