带有空格分割问题的字符串

时间:2020-07-29 23:34:12

标签: python python-3.x string list

我有一个txt文档,其中包含很多这样的行:

From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008

我需要将“天”部分切掉。在此示例中,它将是Sat,位置索引= 2。

我有以下有效的代码:

for line in thetxtfile:
    if line.startswith('From '): # watch there is a space after the string 'From'
    line = line.split()
    day = line[2]  # slice the 'day' part out, position index = 2
    dict[day] = dict.get(day,0) + 1 

但是我注意到,如果我不在'From'之后添加空格,则上面的代码将返回indexerror:列表索引超出范围。

也就是说,如果我像下面这样重写if语句,则会发生错误:

if line.startswith('From') # watch there's no space after the string 'From'

如果我没有在'From'之后添加空格,则位置索引0可以正确返回'From';位置索引1可以正确返回电子邮件地址。但是从位置索引2开始,它超出了范围。

有人可以解释吗?

0 个答案:

没有答案