Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6154499
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 23, 20262026-05-23T20:16:25+00:00 2026-05-23T20:16:25+00:00

Newbie in Python need help! I have a file with a structure: [timestamp] [level]

  • 0

Newbie in Python need help!

I have a file with a structure:

[timestamp] [level] [source] message

which contains following lines(for example):

[Wed Oct 11 14:34:52 2000] [error] [client 127.0.0.1] error message
[Wed Oct 11 18:56:52 2000] [warning] [client 127.0.0.1] error message
[Wed Oct 11 22:15:52 2000] [critical] [client 127.0.0.1] error message

And i need to sort this lines by [level] and display a result in STDOUT. But there is two conditions: we must have opportunity to select [level] name which uses to sorting and all lines with upper [level] should be displayed too.

[level] values:
critical = 50
error = 40
warning = 30
info = 20
debug = 10

I decide to do this with suits:

suits = {'critical': 50, 'error': 40, 'warning': 30}
l = ['critical','error','warning']
print sorted(l, key=suits.get)

But i suppose it’s not the best way.

I hope you’ll help me to solve this…

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-23T20:16:26+00:00Added an answer on May 23, 2026 at 8:16 pm

    Here is working code (I couldn’t help, even though @Hamidi said “We won’t write your program for you” 😉

    import re
    
    PAT = re.compile(r'\[(?P<time>[^\]]+)\] \[(?P<level>[^\]]+)\] \[(?P<client>[^\]]+)\] (?P<message>\S+)')
    LEVELS = ['critical', 'error', 'warning', 'info', 'debug']
    
    def level_number(line):
        match = PAT.match(line)
        if match:
            level = PAT.match(line).groupdict()['level']
            return LEVELS.index(level)
        return len(LEVELS)
    
    with open('log.txt') as f:
        result = sorted(f, key=level_number)
    

    Note, I included the regex with groups for each part (this may come in convenience for further processing). HTH.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am a newbie to Python and have come across the following example in
I'm a newbie to python and the app engine. I have this code that
I have a file of the following format. 15/07/2010 14:14:13 changed_status_from_Offline_to_Available 15/07/2010 15:01:09 changed_status_from_Available_to_Offline
A clueless Python newbie needs help. I muddled through creating a simple script that
i'm newbie for python programming, i'm having a .py file, now what shall i
I'm newbie for python, I'm having task so I need to scan wifi and
Don't flame but I'm still a python newbie. I need to suppress the carriage
Newbie question. I have a NSMutableArray that holds multiple objects (objects that stores Bezier
Newbie to LINQ, and trying to write the following query... select f.Section_ID, f.Page_ID, f.SortOrder,
Newbie here...can I write one program which incorporates .NET LINQ and also various Java

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.