如果使用 python 的列表中不存在值,如何忽略?
How to ignore if a value is not present inside a list using python?
我在列表中有一个错误 w.r.t 列表。我正在尝试将元素分配给变量。因此,无论我在列表中的那些列表中插入什么,它都会被分配给那些变量。喜欢下面的节目
list = [[1, 2], [2, 3], [4, 5]]
car = list[0]
bike = list[1]
cycle = list[3]
现在,假设我不会为第三个列表提供值(如下所示)。然后我会得到一个错误:
list[[1, 2], [2, 3]]
car = list[0]
bike = list[1]
cycle = list[3]
错误信息:List index out of range
所以,我写了一个应该忽略它的条件。但是我收到一个错误。如果没有给定值如何忽略?
我的代码:
if list[0] == []:
continue
else:
car = list[0]
if list[1] == []:
bike = list[1]
if list[2] == []:
cycle = list[2]
语法错误:'continue' not properly in loop
我哪里错了?如果其中没有列表,如何给出 if 条件?我给的对吗?
就像你会说的那样去做。
lst = [[1,2],[2,3],[4,5]]
if len(lst) > 0:
car = lst[0]
if len(lst) > 1:
bike = lst[1]
if len(lst) > 2:
cycle = lst[2]
如果我对你的问题的理解正确,那么你正在寻找的是 try/except 语句。
这允许您执行以下操作:
try:
car = list[0]
bike = list[1]
bike = list[2]
except IndexError:
pass
此代码允许您执行块“try”,直到出现异常为止,如果发现错误,您只需继续循环即可。例如,您可以将类似的内容放入 for 循环中,如下所示:
for list in my_list_of_lists:
try:
car = list[0]
bike = list[1]
bike = list[2]
except IndexError:
continue
最后,关于这个
SyntaxError: 'continue' not properly in loop
如果您使用 break/continue/pass 语句,它们应该始终在 for 或 while 循环中,如我上面所示。
鉴于:
a = [[1,2],[2,3],[4,5]]
和变量 index
,具有您要用于索引列表的整数值。
几个选项:
- 检查列表的长度是否小于您要提取的索引。
if len(a) > index:
nested_list = a[index]
- 试试吧。
try:
nested_list = a[index]
except IndexError as e:
print(f'index invalid {e}')
# fallback condition
nested_list = []
我在列表中有一个错误 w.r.t 列表。我正在尝试将元素分配给变量。因此,无论我在列表中的那些列表中插入什么,它都会被分配给那些变量。喜欢下面的节目
list = [[1, 2], [2, 3], [4, 5]]
car = list[0]
bike = list[1]
cycle = list[3]
现在,假设我不会为第三个列表提供值(如下所示)。然后我会得到一个错误:
list[[1, 2], [2, 3]]
car = list[0]
bike = list[1]
cycle = list[3]
错误信息:List index out of range
所以,我写了一个应该忽略它的条件。但是我收到一个错误。如果没有给定值如何忽略?
我的代码:
if list[0] == []:
continue
else:
car = list[0]
if list[1] == []:
bike = list[1]
if list[2] == []:
cycle = list[2]
语法错误:'continue' not properly in loop
我哪里错了?如果其中没有列表,如何给出 if 条件?我给的对吗?
就像你会说的那样去做。
lst = [[1,2],[2,3],[4,5]]
if len(lst) > 0:
car = lst[0]
if len(lst) > 1:
bike = lst[1]
if len(lst) > 2:
cycle = lst[2]
如果我对你的问题的理解正确,那么你正在寻找的是 try/except 语句。 这允许您执行以下操作:
try:
car = list[0]
bike = list[1]
bike = list[2]
except IndexError:
pass
此代码允许您执行块“try”,直到出现异常为止,如果发现错误,您只需继续循环即可。例如,您可以将类似的内容放入 for 循环中,如下所示:
for list in my_list_of_lists:
try:
car = list[0]
bike = list[1]
bike = list[2]
except IndexError:
continue
最后,关于这个
SyntaxError: 'continue' not properly in loop
如果您使用 break/continue/pass 语句,它们应该始终在 for 或 while 循环中,如我上面所示。
鉴于:
a = [[1,2],[2,3],[4,5]]
和变量 index
,具有您要用于索引列表的整数值。
几个选项:
- 检查列表的长度是否小于您要提取的索引。
if len(a) > index:
nested_list = a[index]
- 试试吧。
try:
nested_list = a[index]
except IndexError as e:
print(f'index invalid {e}')
# fallback condition
nested_list = []