リスト actualrules には、文字列の 1 つに一重引用符が含まれているため、以下に示すように二重引用符で囲む必要があります。
actualrules = ['Hello World', 'Goodbye Universe',
"Let's go to the mall"]
あなたの for ループでは、 i がリストの各項目になり、 i[0] を実行して最初の文字のみを取得します
以下はあなたのリストの実例です
import sys
import wx
class TestFrame(wx.Frame):
def __init__(self, *args, **kwargs):
super(TestFrame, self).__init__(*args, **kwargs)
actualrules = ['Hello World', 'Goodbye Universe',
"Let's go to the mall"]
panel = wx.Panel(self)
self.list = wx.ListCtrl(panel, size=(1000, 1000), style=wx.LC_REPORT)
self.list.InsertColumn(0, 'Rules')
for i in actualrules:
self.list.InsertStringItem(sys.maxint, i)
pSizer = wx.BoxSizer(wx.VERTICAL)
pSizer.Add(self.list, 0, wx.ALL, 5)
panel.SetSizer(pSizer)
vSizer = wx.BoxSizer(wx.VERTICAL)
vSizer.Add(panel, 1, wx.EXPAND)
self.SetSizer(vSizer)
if __name__ == '__main__':
wxapp = wx.App(False)
testFrame = TestFrame(None)
testFrame.Show()
wxapp.MainLoop()