Python ListCtrl设置字符串项
我有一个字符串数组,比如说Python ListCtrl设置字符串项,python,list,wxpython,Python,List,Wxpython,我有一个字符串数组,比如说['Hello World','bye Universe',让我们去购物中心],我想在一个列表中输入一个CTRL,我的代码只打印出数组中每个索引的某些字母。 我的代码: self.list = wx.ListCtrl(panel,size=(1000,1000)) self.list.InsertColumn(0,'Rules') for i in actualrules: self.list.InsertStringItem(sys.maxint, i[0])
['Hello World','bye Universe',让我们去购物中心]
,我想在一个列表中输入一个CTRL,我的代码只打印出数组中每个索引的某些字母。
我的代码:
self.list = wx.ListCtrl(panel,size=(1000,1000))
self.list.InsertColumn(0,'Rules')
for i in actualrules:
self.list.InsertStringItem(sys.maxint, i[0])
actualrules是数组您的列表actualrules在其中一个字符串中有一个单引号,因此您应该用双引号将其括起来,如下所示
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()
变量
i
似乎是字符串,而不是索引。您应该会得到一些错误(来自实际规则[i]
),对吗?