Python 使用索引-1使temp=a[index]可以拆分空字符串。拆分(";)?

Python 使用索引-1使temp=a[index]可以拆分空字符串。拆分(";)?,python,for-loop,indexing,append,Python,For Loop,Indexing,Append,下面有些奇怪的东西。如果我将y.append(temp[-1])更改为y.append(temp[1])。我会收到一条错误消息 y、 追加(临时[1]) 索引器:列表索引超出范围 因为我是索引变量a,所以每次在循环中我都应该得到以下临时值 ['350','2'] ['450','9'] ['570','12'] ['',] 这应该允许我使用temp[0]和temp[1]。这是虫子吗 x = [] y = [] a = ['350 5', '450 9', '570 12', ''] for

下面有些奇怪的东西。如果我将y.append(temp[-1])更改为y.append(temp[1])。我会收到一条错误消息

y、 追加(临时[1]) 索引器:列表索引超出范围

因为我是索引变量a,所以每次在循环中我都应该得到以下临时值

['350','2']

['450','9']

['570','12']

['',]

这应该允许我使用temp[0]和temp[1]。这是虫子吗

x = []
y = []

a = ['350 5', '450 9', '570 12', '']

for index in range(len(a)):
    print(index)
    temp = a[index].split(" ")
    x.append(temp[0])
    y.append(temp[-1])

print(x)
print(y)

列表的最后一项不包含空格,因此split函数返回的列表不仅仅是一个值(即空字符串)。temp[1]指向temp中不存在的项。

99.99%的情况下,假设CPython存在错误是不明智的。您试图拆分一个空字符串,并假设得到2个值。您不需要做的就是将
'.split()
放入REPL并查看输出。这是一个空的列表杰罗,谢谢你明确的回答。现在我觉得这很有道理。如果它是一个空字符串,为什么-1可以工作?它不应该是一致的,而不是一起工作吗?这是我使用-1索引得到的答案-['350','450','570',''['5','9','12','']