Python simple Text Processing method

Source: Internet
Author: User
The examples in this paper describe the method of simple text processing in Python. Share to everyone for your reference. Specific as follows:

Because of the multi-threading impact, the C + + project printed out in an inconsistent chronological order, resulting in a less-than-good statistic in Excel, and using Python to write a paragraph script to solve it. involves the following aspects

1. txt text read, UTF8 processing
2. Basic operation of strings
3. Basic operation of Dict
4. Basic operation of List (array)

#!/usr/bin/python#print "Hello World" Str_seperator = "============================================================ ====================== "timepointname = [" Enter Opennextimage at ", #0" Enter Openimage @ ", #1" in Openimage send On_ Imagerefresh at ', #2 ' leave openimage at ', #3 ' leave opennextimage at ', #4 ' enter LoadImage at ', #5 ' decode be Gan at ', #6 ' enter drawclient at ', #7 ' leave drawclient at ', #8 ' decode end at ', #9 ' in LoadImage send On_imag     Erefresh at ', #10 ' leave loadimage at ', #11 ' second enter drawclient at ', #12 ' second leave drawclient at ' #13 ]itemnumber= 0;avgtotal = 0; #13 -0avgfirstdraw = 0; #8 -2avgloadimage = 0; #11 -5avgseconddraw = 0; #13 -10fobj = open ("F:\log.txt", "r") Imagetimesta = {}dic = {}path = "" idx = 0for line in Fobj:idx  = idx + 1 if idx = = 1:line = line[3:] Else:pass line = Line.strip () line = Line.decode ("Utf-8"). Encode ("GBK") if line = = Str_seperator:if Path = = "": Pass Else:imagetimeSta[path] = dic dic = {} path = "" Continue TabIndex = Line.find (' \ t ') if TabIndex = = -1:path = Line pri NT path Continue Tablastindex = Line.rfind (' \ t ') name = Line[0:tabindex] time = Int (Line[tablastindex + 1:]) if Nam E in dic:dic["second" + name] = time Else:dic[name] = Timefobj.close () ItemNumber = Len (imagetimesta) keys = image  Timesta.keys (); for (K,dic) in Imagetimesta.iteritems (): Avgtotal + = dic[timepointname[13]]-dic[timepointname[0]];  Avgfirstdraw + = Dic[timepointname[8]]-dic[timepointname[2];  Avgloadimage + = dic[timepointname[11]]-dic[timepointname[5]; Avgseconddraw + = dic[timepointname[13]]-dic[timepointname[10]];p rint ' avgtotal ', Avgtotal/float (itemNumber) print ' Avgfirstdraw ', avgfirstdraw/float (itemnumber) print ' Avgloadimage ', Avgloadimage/float (itemnumber) print ' Avgseconddraw ', Avgseconddraw/float (itemnumber) #print Imagetimesta

The Log.txt file is as follows:

Enter opennextimage at 5124d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \2.jpgenter openimage at 5124In openimage send On_imagerefres h at 5124enter loadimage @ 5124leave openimage at 5124leave opennextimage @ 5124decode began at 5124enter Drawclien T at 5140leave drawclient @ 5155decode end at 5265in loadimage send On_imagerefresh @ 5265leave loadimage at 5265en ter drawclient at 5280leave drawclient at 5327====================================================================== ============enter opennextimage at 6280d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \3.jpgenter openimage at 6280In openimage send On_ Imagerefresh at 6280enter loadimage @ 6280leave openimage at 6296leave opennextimage @ 6296decode began at 6296ente R drawclient at 6296leave drawclient @ 6312decode end at 6437in loadimage send On_imagerefresh at 6437enter Drawclien T at 6437leave loadimage @ 6452leave drawclient at 6499============================================================== ====================enter OpennExtimage at 7265d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \4.jpgenter openimage at 7265In openimage send On_imagerefresh at 7265lea ve openimage at 7265leave opennextimage @ 7265enter loadimage at 7265decode began @ 7265enter drawclient at 7265lea ve drawclient at 7296decode end @ 7421in loadimage send On_imagerefresh at 7421enter drawclient at 7421leave Loadimag E at 7437leave drawclient at 7483==================================================================================  Enter opennextimage at 8062d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \5.jpgenter openimage at 8062In openimage send On_imagerefresh  At 8062leave openimage @ 8062leave opennextimage at 8062enter loadimage @ 8062decode began at 8062enter drawclient At 8062leave drawclient @ 8077decode end at 8202in loadimage send On_imagerefresh @ 8202enter drawclient at 8202le Ave Drawclient at 8265leave LoadImage at 8280======================================================================= ===========enter Opennextimage at 8811d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \6.jpgenter openimage at 8811In openimage send On_imagerefresh at 8811leave openimage At 8811leave opennextimage @ 8811enter loadimage at 8811decode began @ 8811enter drawclient at 8811leave Drawclien T at 8843decode end @ 8968in loadimage send On_imagerefresh at 8968leave loadimage @ 8968enter drawclient at 8968le Ave Drawclient at 9030==================================================================================enter Opennextimage at 9515d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \7.jpgenter openimage at 9515In openimage send On_imagerefresh at 95 15leave openimage at 9515leave opennextimage @ 9515enter loadimage at 9515decode began @ 9530enter drawclient at 95 30leave drawclient at 9546decode end @ 9671in loadimage send On_imagerefresh at 9671enter drawclient at 9671leave Loa DIMAGE at 9671leave drawclient at 9733============================================================================= =====enter Opennextimage at 10171d:\picS\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \8.jpgenter openimage at 10171In openimage send On_imagerefresh at 10171leave openimage at 1017   1leave opennextimage at 10171enter loadimage @ 10171decode began at 10186enter drawclient @ 10186leave drawclient at 10202decode end at 10311in loadimage send On_imagerefresh at 10311leave loadimage @ 10311enter drawclient at 10311l Eave Drawclient at 10374==================================================================================enter  Opennextimage at 10811d:\pics\ test picture \ Decoding performance comparison diagram \jpeg\ smaller figure \9.jpgenter openimage at 10811In openimage send On_imagerefresh at  10811enter LoadImage at 10811leave openimage @ 10811leave opennextimage at 10811enter drawclient at 10811decode began At 10811leave drawclient @ 10843decode end at 10952in loadimage send On_imagerefresh @ 10952leave loadimage at 109 52enter drawclient at 10952leave drawclient at 11030================================================================ ==================enter Opennextimage At 11452d:\pics\ test picture \ Decoding performance comparison with figure \jpeg\ smaller figure \10.jpgenter openimage at 11452In openimage send On_imagerefresh at 11452leave O Penimage at 11452leave opennextimage @ 11452enter loadimage at 11452decode began @ 11452enter drawclient at 11468le Ave Drawclient at 11483decode end @ 11593in loadimage send On_imagerefresh at 11593enter drawclient at 11593leave Loa DIMAGE at 11608leave drawclient at 11655=========================================================================== =======enter opennextimage at 12077enter drawclient @ 12077leave drawclient at 12108================================== ================================================enter opennextimage at 13124d:\pics\ test picture \ Decoding Performance comparison chart \jpeg\ smaller diagram \1. Jpgenter openimage at 13124In openimage send On_imagerefresh at 13124leave openimage @ 13124leave opennextimage at 13 124enter LoadImage at 13124decode began @ 13124enter drawclient at 13139leave drawclient @ 13155decode end at 13358 In LoadImage send On_imagerefresh at 13358leave LoadImage at 13358enter drawclient @ 13358leave drawclient at 13405=========================================== =======================================

Hopefully this article will help you with Python programming.

  • Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.