相关疑难解决方法(0)

通过id()获取对象?

假设我有一个Python对象的id,我通过这个来检索它id(thing).如何thing通过我给出的身份证号码再次找到?

python

114
推荐指数
5
解决办法
7万
查看次数

是否有可能取消引用变量id?

你可以取消引用从idPython函数中检索的变量id 吗?例如:

dereference(id(a)) == a
Run Code Online (Sandbox Code Playgroud)

我想从学术角度来了解; 我知道有更实用的方法.

python memory dereference

14
推荐指数
4
解决办法
1万
查看次数

python & json.dump:如何在一行中创建内部数组

我的python代码:

with open('outputFile.json', 'w') as outfile:
    json.dump(ans, outfile, indent=4, separators=(',', ': '))
Run Code Online (Sandbox Code Playgroud)

输出文件是

[
    {
        "rowLength": 5,
        "alphabet": [
            "Q",
            "W",
            "I",
            "B",
            "P",
            "A",
            "S"
        ]
    },
    {
        "rowLength": 3,
        "alphabet": [
            "S",
            "D",
            "E",
            "U",
            "I",
            "O",
            "L"
        ]
    }
]
Run Code Online (Sandbox Code Playgroud)

如何将内部数组变成一行?谢谢

python json

11
推荐指数
1
解决办法
7255
查看次数

Python,json 转储一个没有换行符的列表

我正在写一些最终会输出一个json文件的东西。

这是我目前要测试的

import json

my_list = [1, 2, 3]
my_dict = {"key": "value", "boolean": True}
my_json = {"object": my_dict, "array": my_list}

print(json.dumps(my_json, indent=4))
Run Code Online (Sandbox Code Playgroud)

这将输出:

{
    "object": {
        "key": "value",
        "boolean": true
    },
    "array": [
        1,
        2,
        3
    ]
}
Run Code Online (Sandbox Code Playgroud)

我不想要的是数组中每个值后的换行符,纯粹是出于审美目的,即

"array": [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

python json

10
推荐指数
1
解决办法
7341
查看次数

JSON:每行保存一个字典

如何将python字典列表保存到文件中,每个字典dict将保存在一行中?我知道我可以json.dump用来保存字典列表。但是我只能将列表以紧凑形式保存(一行中的完整列表)或缩进形式,其中为所有字典键添加一个换行符。

编辑:

我希望我的最终json文件如下所示:

[{key1:value,key2:value},
{key1:value,key2:value},
...
{key1:value,key2:value}]
Run Code Online (Sandbox Code Playgroud)

python json

7
推荐指数
2
解决办法
6537
查看次数

为什么这个自定义json编码器不起作用?

这个问题中描述的问题是由于我在尝试修复方法时犯了一个愚蠢的错误,即没有恢复测试后的更改 - 但是网站不允许我删除它.因此,我建议你通过忽略它来节省自己在别处花费的时间.

在尝试最初建议使用自定义子类来解决打印问题的答案时JSONEncoder,我发现文档建议在Extending JSONEncoder: section中执行的操作似乎不起作用.这是我的代码,该代码ComplexEncoder在文档的该部分的示例之后进行了模式化.

import json

class NoIndent(object):
    def __init__(self, value):
        self.value = value

class MyEncoder(json.JSONEncoder):
    def default(self, obj):
        print 'MyEncoder.default() called'
        if isinstance(obj, NoIndent):
            return 'MyEncoder::NoIndent object'  # hard code string for now
        else:
            return json.JSONEncoder.default(self, obj)

data_structure = {
    'layer1': {
        'layer2': {
            'layer3_1': NoIndent([{"x":1,"y":7},{"x":0,"y":4},{"x":5,"y":3},{"x":6,"y":9}]),
            'layer3_2': 'string'
        }
    }
}

print json.dumps(data_structure, default=MyEncoder)
Run Code Online (Sandbox Code Playgroud)

这是导致的追溯:

Traceback (most recent call last):
  File "C:\Files\PythonLib\Stack Overflow\json_parsing.py", line 26, in <module>
    print json.dumps(data_structure, …
Run Code Online (Sandbox Code Playgroud)

python json

5
推荐指数
1
解决办法
9073
查看次数

Python 2.7 中的自定义 JSON 编码器用于插入纯 JavaScript 代码

我正在尝试将一部分 Python 2.6 代码升级到 Python 2.7。此代码使用该json模块生成一些 JavaScript(不符合 JSON),然后将其插入到脚本的其余部分中。

总体思路是能够插入代码或引用其他地方定义的变量:它不是用作 JSON 数据,而是用作 JavaScript 代码。

这是在 Python 2.6 中工作的自定义编码器:

import json

class RawJavaScriptText:
    def __init__(self, jstext):
        self._jstext = jstext
    def get_jstext(self):
        return self._jstext

class RawJsJSONEncoder(json.JSONEncoder):
    def _iterencode_default(self, o, markers=None):
        if isinstance(o, RawJavaScriptText):
            yield self.default(o)
        else:
            json.JSONEncoder._iterencode_default(self, o, markers)

    def default(self, o):
        if isinstance(o, RawJavaScriptText):
            return o.get_jstext()
        else:
            return json.JSONEncoder.default(self, o)

testvar = {
   'a': 1,
   'b': 'abc',
   # RawJavaScriptText will be inserted as such, no serialisation.
   'c': RawJavaScriptText('function() { return …
Run Code Online (Sandbox Code Playgroud)

python json python-2.6 python-2.7

4
推荐指数
1
解决办法
1998
查看次数

将二维列表写入 JSON 文件

我有一个二维列表,如:

data = [[1,2,3], [2,3,4], [4,5,6]]
Run Code Online (Sandbox Code Playgroud)

我想像这样将它写入 JSON 文件:

{
    'data':[
        [1,2,3],
        [2,3,4],
        [4,5,6]
    ]
}
Run Code Online (Sandbox Code Playgroud)

我得到这个json.dumps(data, indent=4, sort_keys=True)

{
    'data':[
        [
         1,
         2,
         3
        ],
        [
         2,
         3,
         4
        ],
        [
         4,
         5,
         6]
    ]
}
Run Code Online (Sandbox Code Playgroud)

这是另一个问题如何在使用 JSON 模块进行漂亮打印时实现自定义缩进?,但那是字典。

python json

4
推荐指数
1
解决办法
6712
查看次数

使用字符串数组替换字符串

假设我有一个字符串s

s = "?, ?, ?, test4, test5"
Run Code Online (Sandbox Code Playgroud)

我知道有三个问号,我想用下面的数组相应地替换每个问号

replace_array = ['test1', 'test2', 'test3']
Run Code Online (Sandbox Code Playgroud)

获得

output = "test1, test2, test3, test4, test5"
Run Code Online (Sandbox Code Playgroud)

Python中是否有一个函数,类似的东西s.magic_replace_func(*replace_array)会实现预期的目标?

谢谢!

python string replace list

3
推荐指数
1
解决办法
1420
查看次数

标签 统计

python ×9

json ×6

dereference ×1

list ×1

memory ×1

python-2.6 ×1

python-2.7 ×1

replace ×1

string ×1