Posted in Python onMarch 10, 2015
本文实例讲述了Python实现去除代码前行号的方法。分享给大家供大家参考。具体实现方法如下:
# -*- coding: utf-8 -*- import wx class MainWindow(wx.Frame): def __init__(self, parent, id): wx.Frame.__init__(self, parent, id, u'去除代码前行号的Python小工具 - wxPython版 - Develop by Yanxy') self.textBox = wx.TextCtrl(self, 1, style=wx.TE_MULTILINE,size=(600,600)) self.butOK = wx.Button(self, label=u"去除行号") self.butLeft = wx.Button(self, label=u"去除左侧一个字符") self.Bind(wx.EVT_BUTTON, self.CutLineNum, self.butOK) self.Bind(wx.EVT_BUTTON, self.CutLeftChar, self.butLeft) self.Bind(wx.EVT_CLOSE, self.OnCloseWindow) self.sizer = wx.BoxSizer(wx.HORIZONTAL) self.sizer.Add(self.textBox,1,wx.EXPAND) self.sizer.Add(self.butOK) self.sizer.Add(self.butLeft) self.SetSizer(self.sizer) self.SetAutoLayout(1) self.sizer.Fit(self) self.Show(True) def OnCloseWindow(self, event): self.Destroy() def CutLineNum(self, event): multiStr = unicode(self.textBox.GetValue()).splitlines(1) outStr = u'' for singleStr in multiStr: singleStr = singleStr.lstrip() i=0 for charStr in singleStr: if charStr.isdigit(): i += 1 elif i>0: singleStr = singleStr[i:] break else: break outStr += singleStr self.textBox.SetValue(outStr) def CutLeftChar(self, event): outStr = u'' multiStr = unicode(self.textBox.GetValue()).splitlines(1) for singleStr in multiStr: singleStr = singleStr[1:] outStr += singleStr self.textBox.SetValue(outStr) if __name__ == '__main__': app = wx.PySimpleApp() frame = MainWindow(parent=None, id=-1) app.MainLoop() del app
希望本文所述对大家的Python程序设计有所帮助。
Python实现去除代码前行号的方法
- Author -
Sephiroth声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@