Python 我怎样才能得到回报'';如果对象[3]返回值为';索引器:列表索引超出范围';

Python 我怎样才能得到回报'';如果对象[3]返回值为';索引器:列表索引超出范围';,python,list,if-statement,Python,List,If Statement,如果对象[3]返回值为索引器,则我要获取',:列表索引超出范围 可能吗 我使用的代码是: object = [4,5] print(object[3] if object[3] is not None else '') 我得到的就是这个错误: Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> object[3] if object[3] is not None

如果
对象[3]
返回值为
索引器,则我要获取
'
:列表索引超出范围

可能吗

我使用的代码是:

object = [4,5]
print(object[3] if object[3] is not None else '')
我得到的就是这个错误:

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    object[3] if object[3] is not None else ''
IndexError: list index out of range
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
对象[3]如果对象[3]不是其他对象“”
索引器:列表索引超出范围

在访问项目之前检查列表的长度:

>>> lst = [4,5]
>>> lst[3] if len(lst) > 3 and lst[3] is not None else ''
''

>>> lst = [4,5,6,7,8]
>>> lst[3] if len(lst) > 3 and lst[3] is not None else ''
7

顺便说一句,这是一个内置类型。使用
对象
作为变量将对其进行阴影处理。如果可能,请使用其他名称。

在访问项目之前,请检查列表的长度:

>>> lst = [4,5]
>>> lst[3] if len(lst) > 3 and lst[3] is not None else ''
''

>>> lst = [4,5,6,7,8]
>>> lst[3] if len(lst) > 3 and lst[3] is not None else ''
7

顺便说一句,这是一个内置类型。使用
对象
作为变量将对其进行阴影处理。如果可能,请使用其他名称

​​​​​​​​​​​​​​​嗯……您只能使用类似于
打印(如果len(object)>=3 else'',则对象[3])
。否则,您必须使用
try…除了
块。因为当您试图访问不在列表中的索引时,Python将引发错误而不是返回
None
=
应该是
。否则,如果有3项,它将引发
索引器
@falsetru:​​​​​​​​​​​​​​​啊,是的。忘记了
对象[3]
是第四个元素。​​​​​​​​​​​​​​​嗯……您只能使用类似于
打印(如果len(object)>=3 else'',则对象[3])
。否则,您必须使用
try…除了
块。因为当您试图访问不在列表中的索引时,Python将引发错误而不是返回
None
=
应该是
。否则,如果有3项,它将引发
索引器
@falsetru:​​​​​​​​​​​​​​​啊,是的。忘记了
对象[3]
是第四个元素。谢谢!!如果它不是数组的索引(索引器:列表索引超出范围),则返回`'''`。有可能吗?谢谢!!如果它不是数组的索引(索引器:列表索引超出范围),则返回`'''`。有可能吗??