![](/img/trans.png)
[英]Why am I getting IndexError: list index out of range in this code?
[英]Why am I getting an IndexError: list index out of range when my code appears to be within the range?
我正在編寫一個名為“我的倒計時日歷”的項目。 我快完成了,所以我給了我到目前為止的測試運行。 我最終得到了這個錯誤。 這是我的代碼。
from tkinter import Tk, Canvas
from datetime import date, datetime
def gete():
liste = []
with open('events.txt') as file:
for line in file:
line = line.rstrip('\n')
currente = line.split(',')
eventd = datetime.strptime(currente[1], '%d/%m/%y').date()
currente[1] = eventd
liste.append(currente)
return liste
def daysbd(date1, date2):
timeb = str(date1-date2)
numberofd = timeb.split(' ')
return numberofd[0]
root = Tk()
c = Canvas(root, width=800, height=800, bg='black')
c.pack()
c.create_text(100, 50, anchor='w', fill='orange', font = 'Arial 28 bold underline', text = 'My Countdown Calendar')
events = gete()
today = date.today()
for event in events:
eventn = event[0]
daysu = daysbd(event[1], today)
display = 'It is %s days until %s ' % (daysu, eventn)
c.create_text(100, 100, anchor='w', fill='lightblue',\
font = 'Arial 28 bold ', text = display)
解析文本文件時,您幾乎總是想跳過空行。 這是一個 idomatic 模式:
for line in file:
line = line.strip()
if not line:
continue
# process line
如果您的文件格式取決於非空行上的空格,您可以將第 2 行和第 3 行連接到if not line.strip()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.