python列表包含true和false,而不是true和Fals

2024-09-30 22:21:51 发布

您现在位置:Python中文网/ 问答频道 /正文

--------------------------更新--------------------

因为有太多的困惑,我决定给一个更详细的解释。请看下面的代码,并将重点放在

day = {"days": buildString2(day_array[i])}

代码如下:

^{pr2}$

当我打印dict时,我得到以下结果

{'id': 'c8d5185667f', 'available_days': [{'days': '[true, true, true, true, true, true, true]', 'times': {'start_time': '12:00', 'end_time': '10:00'}}], 'space_usages': ['Fitness', 'Events', 'Classes', 'Performance']}

但我老板想要这个

{'id': 'c8d5185667f', 'available_days': [{'days': [true, true, true, true, true, true, true], 'times': {'start_time': '12:00', 'end_time': '10:00'}}], 'space_usages': ['Fitness', 'Events', 'Classes', 'Performance']}

这也不管用

{'id': 'c8d5185667f', 'available_days': [{'days': ['true', 'true', 'true', 'true', 'true', 'true', 'true'], 'times': {'start_time': '12:00', 'end_time': '10:00'}}], 'space_usages': ['Fitness', 'Events', 'Classes', 'Performance']}

这更有意义吗?有可能得到吗

[true, true, true, true, true, true, true]

作为一种价值?我试过这么做

day = {"days": ast.literal_eval(buildString2(day_array[i]))}

但它崩溃了。我没主意了。我试过用谷歌搜索各种各样的东西,但似乎什么也找不到。非常感谢你的帮助。我真的不相信这是可能的,但那是我被告知要做的。在

注意:它们必须是小写的。这不管用

[True, True, True, True, True, True, True]

Tags: idtruetimespaceeventsdaysstartend
3条回答

您可以使用^{} module将布尔列表转换为字符串,并以相反方式:

>>> import json
>>> json.dumps([True, False, True, True, False])
'[true, false, true, true, false]'
>>> json.loads('[true, false, true, true, false]')
[True, False, True, True, False]

你可以得到老板想要的东西,只是不要使用内置的真假:

class MyBool(object):
    def __init__(self, value):
        self.value = bool(value)
    def __repr__(self):
        return repr(self.value).lower()
    def __bool__(self):
        return self.value

print({'a' : [MyBool(True), MyBool(True), MyBool(False)]})

结果:

^{pr2}$

实际上不需要__bool__,但是(在python3中)它允许在逻辑条件下使用对象。

因此,根据请求,它不是一个有效的Python文本,因为它使用true而不是{};它也不是有效的JSON,因为它使用单引号的键字符串而不是双引号。{cd3>不接受双引号的东西吗?我不认为有任何可能仅仅修复原始API来接受JSON?在

这是JSON,所以您应该将您的一周转换成JSON格式

In [1]: import simplejson as json
In [2]: week = [True, False, True, True]
In [3]: json.dumps(week)
Out[3]: '[true, false, true, true]'

要转换回原样,只需加载并解析它:

^{pr2}$

相关问题 更多 >