试图循环遍历索引值-打算为每个索引号除以2得到False值

时间:2019-03-24 21:48:15

标签: python-3.7

我有一个列表,例如:

bool_list = [False,False,True,True,True,True]

现在,我计划运行一个for循环,以确保将除以2的每个索引值都转换为False。如果索引值未除以2,则它保持不变。

例如,我想要一个结果,其中bool_list将显示=

[False,False,False,True,False,True],因为第二和第四索引已变为False。

我尝试使用enumerate函数编写以下for循环以获取索引值,但不知何故给了我一个错误:

def mark_false(bool_list, p):
    for idx,val in enumerate(bool_list):
        if idx % p ==0:
            bool_list[idx] ==False
        else:
            bool_list[idx] = bool_list[idx]
    return (bool_list) 

该函数将与p = 2一起使用

2 个答案:

答案 0 :(得分:0)

您可以通过用相同长度的(function($) { $(document).ready(function() { var params = window.location.search.substring(1).split("&"); var disabledownload = false; var disableprint = false; var disabletext = false; var disabledoc = false; var disableopen = true; for (var i = 0; i < params.length; i++) { var value = params[i].split("="); if (value && value.length == 2) if (value[0] == "disabledownload" && value[1] == 1) disabledownload = 1; else if (value[0] == "disableprint" && value[1] == 1) disableprint = 1; else if (value[0] == "disabletext" && value[1] == 1) disabletext = 1; else if (value[0] == "disabledoc" && value[1] == 1) disabledoc = 1 } var extracss = ""; if (disabledownload) extracss += " .download {display:none!important;}"; if (disableprint) extracss += " .print {display:none!important;}"; if (disabletext) extracss += " .textLayer {-webkit-touch-callout: none !important; -webkit-user-select: none !important; -khtml-user-select: none !important; -moz-user-select: none !important; -ms-user-select: none !important; user-select: none !important;} .selectTool { display: none !important;}"; if (disabledoc) extracss += " #documentProperties {display:none !important;}"; if (disableopen) extracss += " #openFile { display:none!important;}"; if (disableopen) extracss += " #secondaryOpenFile { display:none!important;}"; if (extracss) { var style = document.createElement("style"); style.type = "text/css"; style.innerHTML = extracss; document.getElementsByTagName("head")[0].appendChild(style) } $(document).bind("pagerendered", function(e) { if (disabledownload) $(".download").remove(); if (disableprint) $(".print").remove(); if (disableopen) $("#openFile").remove(); if (disableopen) $("#secondaryOpenFile").remove(); if (disabletext) { $(".selectTool").remove(); $(".textLayer").remove(); if (PDFViewerApplication) PDFViewerApplication.pdfCursorTools.switchTool(1) } if (disabledoc) { $(".documentProperties").prev(".horizontalToolbarSeparator").remove(); $(".documentProperties").remove() } }) }) })(jQuery); 个对象列表替换所有其他索引的片段来无循环地进行此操作:

False

答案 1 :(得分:0)

我认为这就是您想要的。 只需更改bool_list的第4和第6个元素。

def mark_false(bool_list, p):
    for i in range(2 * p, len(bool_list), p):
        bool_list[i] = False
    return bool_list
print(mark_false(list_true(6), 2))