Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Exception error 'list index out of range.'

I have a text file (txt_file.txt). Data contain 26 lines as below.

AAA  --> 1st line
BBB
CCC
...
ZZZ -->26th line

I have code for read each line.

with open('txt_file.txt') as file:
    lines = [line.rstrip() for line in file]  
    #print(lines) # or lines[1]
    
subs = [((0, 3), lines[1] +'\n'+lines[2]),
        ((4, 7), lines[3] +'\n'+lines[4]),
        ((8, 11), lines[5] +'\n'+lines[6]),
        ((12, 15), lines[7] +'\n'+lines[8]),
       ((16, 19), lines[9] +'\n'+lines[10]),
       ((20, 23), lines[11] +'\n'+lines[12]),
       ((24, 27), lines[13] +'\n'+lines[14]),
       ((28, 31), lines[15] +'\n'+lines[16]),
       ((32, 35), lines[17] +'\n'+lines[18]),
       ((36, 39), lines[19] +'\n'+lines[20]),
       ((40, 43), lines[21] +'\n'+lines[22]),
       ((44, 47), lines[23] +'\n'+lines[24]),
       ((48, 51), lines[25] +'\n'+lines[26]),
       ((52, 55), lines[27] +'\n'+lines[28]),
       ((56, 59), lines[29] +'\n'+lines[30]),]

error ‘list index out of range’ occur.

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

But I don’t want to change subs = because when I input (txt_file.txt) next time.
It maybe is contained more or less than 26 lines.
I want to exception ‘list index out of range’ error.

>Solution :

Since your numbers are following a linear rule, you can construct them programmatically instead of hardcoding them:

subs = [((4 * i, 4 * i + 3), lines[l + 1] + '\n' + lines[l + 2])
        for i, l in enumerate(range(0, len(lines) - 2, 2))]
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading