如何将 true/false 字符串列表更改为可在函数中使用的 True/false 书籍列表 - python

How to change a list of true/false strings to a list of True/false bools that can be used in a function - python

我从一个文件中收集了真假项列表,并将它们转换为字符串列表:

status = ['True', 'True', 'True', 'True', 'True', 'True', 'True', 'True', 'False']

但我需要将它们输入到一个函数中,该函数只接受每个字符串的布尔值,但这会使所有这些字符串都为真,因为字符串中实际上有一个值。

简而言之,我需要将其转换为:

status = [True, True, True, True, True, True, True, True, False]

所以我尝试了几种不同的循环结构:

for v in status:
    if v == "True":
        v = True
    if v == "False":
        v = False

然而,这仍然会返回列表中的字符串,或者我已经删除了列表值。 感谢大家的帮助。

您的循环实际上并未将值存储回列表。您需要存储它们:

booleans = []

for v in status:
    if v == "True":
        booleans.append(True)
    else:
        booleans.append(False)

status = booleans

或一行:

status = [item == "True" for item in status]

一个班轮:

status = list(map(lambda x: x=='True', status))