如果某些事情不会导致错误,Python会执行

时间:2019-05-11 22:55:24

标签: python if-statement

我正在编程一个项目,我需要检查是否存在某个索引。我想知道是否有办法使用python if语句来做到这一点。我当时正在考虑以下方法:if list[100].will_not_cause_error:,我们将不胜感激!

2 个答案:

答案 0 :(得分:1)

pythonic的方法是尝试-除外:

try:
    do_something(list[100])
except IndexError:
    print("list do not have 100")

但是如果您坚持使用if,则可以测试其长度:

if len(list) < 101:
   print("list do not have 100")

答案 1 :(得分:0)

您可以检查列表的长度:

if len(mylist) > 100):
    # len[100] will be ok to use

如果这不是简单列表,则可以尝试访问索引并捕获IndexError

try:
    mylist[100]
expect:
    # no index 100 in the list
else:
    # index 100 is OK...