您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python列表理解中的多个IF条件

python列表理解中的多个IF条件

怎么样

ar = [('four' if i % 4 == 0 else ('six' if i % 6 == 0 else i)) for i in range(1, n)]

例如,如果n = 30这是

[1, 2, 3, 'four', 5, 'six', 7, 'four', 9, 10, 11, 'four', 13, 14, 15, 'four', 17, 'six', 19, 'four', 21, 22, 23, 'four', 25, 26, 27, 'four', 29]

预计到达时间:这是您可以应用条件列表的方式:

CONDITIONS = [(lambda i: i % 4 == 0, "four"), (lambda i: i % 6 == 0, "six"),
              (lambda i: i % 7 == 0, "seven")]

def apply_conditions(i):
    for condition, replacement in CONDITIONS:
        if condition(i):
            return replacement
    return i

ar = map(apply_conditions, range(0, n))
python 2022/1/1 18:38:22 有222人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶