Folgender Code funktioniert problemlos:
Code: Alles auswählen
import wx
import wx.grid
data = [[65.0, 'HO13D22_R08d21', '20', '13', '36..48 HO13D22_R08d21', '...TGGTGGCTGGTCG...\n |||||||||||||\nATGGTGGCTGGTCGTAATGG']
,[55.0, 'HW06J24', '20', '11', '52..42 HW06J24', '...GCCACCACCAA...\n |||||||||||\nGCCACCACCAAAGTCAAATG']
,[55.0, 'HO14B24', '20', '11', '162..152 HO14B24', '...ACTCAATCCCG...\n |||||||||||\nCATGCAGGTACTCAATCCCG']
,[55.0, 'HO10M21', '20', '11', '52..42 HO10M21', '...GCCACCACCAA...\n |||||||||||\nGCCACCACCAAAGTCAAATG']
,[55.0, 'HO10D21_R06b22', '20', '11', '299..289 HO10D21_R06b22', '...GCCTTCAAGAT...\n |||||||||||\nGCTCATGCCTTCAAGATCCG']
,[55.0, 'HK04J17', '20', '11', '49..59 HK04J17', '...GTTTGGGTTGG...\n |||||||||||\nAGCCTGTTTGGGTTGGATGT']]
data.sort()
colLabels = ("% matching", "primer name", "primer length", "match length", "binding position", "sequence")
class GenericTable(wx.grid.PyGridTableBase):
def __init__(self, data, colLabels=None):
wx.grid.PyGridTableBase.__init__(self)
self.data = data
self.colLabels = colLabels
self.odd=wx.grid.GridCellAttr()
face = 'Courier'
self.odd.SetFont(wx.Font(10, wx.DEFAULT, wx.NORMAL, wx.NORMAL, False, face))
def GetNumberRows(self):
return len(self.data)
def GetNumberCols(self):
return len(self.data[0])
def GetColLabelValue(self, col):
if self.colLabels:
return self.colLabels[col]
def IsEmptyCell(self, row, col):
return False
def GetValue(self, row, col):
return self.data[row][col]
def SetValue(self, row, col, value):
pass
def GetAttr(self, row, col, kind):
attr = self.odd
attr.IncRef()
return attr
class SimpleGrid(wx.grid.Grid):
def __init__(self, parent):
wx.grid.Grid.__init__(self, parent, -1)
tableBase = GenericTable(data, colLabels)
self.SetTable(tableBase)
self.SetDefaultRowSize(55, True)
self.SetColSize(1, 200)
self.SetColSize(2, 100)
self.SetColSize(3, 100)
self.SetColSize(4, 250)
self.SetColSize(5, 450)
self.SetCellAlignment(1, 1, wx.CENTRE, wx.CENTRE)
class TestFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, -1, "A Grid",
size=(1280, 1024))
grid = SimpleGrid(self)
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = TestFrame(None)
frame.Show(True)
app.MainLoop()
Code: Alles auswählen
data = open('liste.txt', 'r')
data = data.read()
print type(data), data
Kann jemand helfen?
Liebe Grüsse
Stefanie