Python [1]在本规范中是什么意思?

Python [1]在本规范中是什么意思?,python,Python,我刚刚开始学习python。我得到了以下声明: output= " name: abc" log =output.split("=")[1] [1]表示什么?为什么要使用它?这就是该语句的含义: output= " name: abc" log =output.split("=")[1] 获取字符串输出并在'='上拆分它,然后获取结果列表中的第二个元素(索引1) 但是,您可以看到您的输出实际上并不包含任何=,您可能需要: output= "name=abc" 以下是分项数字: a =

我刚刚开始学习python。我得到了以下声明:

output= " name: abc" 
log =output.split("=")[1]

[1]
表示什么?为什么要使用它?

这就是该语句的含义:

output= " name: abc"

log =output.split("=")[1]
获取字符串
输出
并在
'='
上拆分它,然后获取结果列表中的第二个元素(索引1)

但是,您可以看到您的
输出
实际上并不包含任何
=
,您可能需要:

output= "name=abc"
以下是分项数字:

a = output.split('=')
>>> a
['name', 'abc']

>>> a[1]
abc

[1]
正在索引到由
输出返回的列表中;如果该方法返回一个包含2个或更多元素的列表,则
[1]
索引第二个元素

在您的特定情况下,它将引发一个
索引器,因为
输出中没有
=
。因此,
output.split(“=”
方法只返回一个包含一个字符串的列表

您可以在Python解释器提示中尝试以下操作:

>>> output= " name: abc" 
>>> output.split('=')
[' name: abc']
>>> output.split('=')[0]
' name: abc'
>>> output.split('=')[1]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

当您确定字符串的(=)等于符号或要拆分的任何字符时,这非常有用。这样它就可以拆分字符串并返回列表

然后从列表中选择字符串的哪一部分对您有用

在您的情况下,它将返回IndexError,因为它不返回列表

output= " name= abc"
log =output.split("=")[1]
在这种情况下,这将非常有用

列表索引。它从
split
生成的列表中获取第二项,在本例中,该项不存在。
output= " name= abc"
log =output.split("=")[1]