Python实现去除代码前行号的方法

yipeiwu_com7年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

关于PyTorch源码解读之torchvision.models

PyTorch框架中有一个非常重要且好用的包:torchvision,该包主要由3个子包组成,分别是:torchvision.datasets、torchvision.models、to...

Python检测生僻字的实现方法

解决思路 首先想到的就是利用 python 的正则表达式来匹配非法字符,然后找出非法记录。然而理想总是丰满的,现实却是残酷的。在实现的过程中,才发现自己对于字符编码、以及 python...

Python SQLite3简介

最近需要用Python写一个简易通讯录,但是对于数据存储很发愁。大家都知道,使用 Python 中的列表和字典进行存储数据是很不靠谱的,所以就想到Python有没有内置的数据库模块。 S...

Python实现二分查找与bisect模块详解

前言 其实Python 的列表(list)内部实现是一个数组,也就是一个线性表。在列表中查找元素可以使用 list.index() 方法,其时间复杂度为O(n) 。对于大数据量,则可以用...

Django rest framework jwt的使用方法详解

Django rest framework jwt的使用方法详解

一简介 JWT 是一个开放标准(RFC 7519),它定义了一种用于简洁,自包含的用于通信双方之间以 JSON 对象的形式安全传递信息的方法。该信息可以被验证和信任,因为它是数字签名的...