我有这种静态方法可以反转字符串中的字符:
@staticmethod
def reverse(s):
txt = ''
for i in range(len(s)-1, -1, -1):
txt += s[i]
return txt
我有一个填充了不同字符串的wxListBox。我需要遍历wxListBox并将反向方法应用于每个字符串:
for name in [self.listBox1.GetString(i) for i in range(self.listBox1.GetCount())]:
self.reverse(str(name))
上面的代码没有反转我的字符串,但我确信我的反向方法有效。如何将反向方法应用于wxListBox中的每个字符串?
答案 0 :(得分:0)
您的代码完美运行:-)它确实可以反转字符串。但那就是它。如果你 想要在列表框中看到反向字符串,您必须更新列表框。 这一切都围绕着这样一个事实,即字符串是不可变的,并且在你的反向中 实际上返回一个新字符串(反向)但没有命令来放置字符串 回到列表框中。所以,这样的事情应该有效:
for i in range(self.listBox1.GetCount()):
self.listBox.SetString(i, self.reverse(self.listBox1.GetString(i)))