当前位置:  开发笔记 > 编程语言 > 正文

变量在打印时更改其格式

如何解决《变量在打印时更改其格式》经验,为你挑选了1个好方法。

我试图使用Python将带有键值数据的变量存储在一个文件中,但是当我尝试打印它时,它会以不同的格式出现.

我希望结果像这样打印 -

data={"name":'name',"description": "This is my offering","icon":"/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library","version": "1.0.0",
                  "design": {
                    "@self": "@self"
                    }
                }

这是我在打印数据时得到的输出 -

{'icon': '/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library', 'design': {'@self': '@self'}, 'name': 'name', 'version': '1.0.0', 'description': 'This is my offering'}

Son of a Bea.. 8

您没有说明打印时对您重要的内容,也没有说明您当前正在尝试打印的内容.

字典中没有格式.代码中的任何格式化仅仅是为了使代码看起来像人类可读并且实际上并未存储在您的data字典中(仅保留每个字符串元素内的格式,即,在一对引号之间).

如果它只是您关注的格式(多行和缩进),解决这个问题的最简单方法是使用漂亮打印模块或JSON模块 - 要么应该完成工作,这取决于您对工作方式的偏好希望数据看起来以及您希望对打印输出格式有多少控制.特别是,JSON输出占据了更多的垂直屏幕空间,但有些人可能认为它略微更具人性化.

PrettyPrint pprint:

import pprint
data={"name":'name',"description": "This is my offering","icon":"/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library","version": "1.0.0","design": {"@self": "@self"}}
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(data)
>>> 
{   'description': 'This is my offering',
    'design': {   '@self': '@self'},
    'icon': '/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library',
    'name': 'name',
    'version': '1.0.0'}
>>>

JSON转储:

import json
data={"name":'name',"description": "This is my offering","icon":"/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library","version": "1.0.0","design": {"@self": "@self"}}
print(json.dumps(data, indent=4))
>>> 
{
    "icon": "/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library", 
    "design": {
        "@self": "@self"
    }, 
    "name": "name", 
    "version": "1.0.0", 
    "description": "This is my offering"
}
>>> 

如果您担心项目的打印顺序,那么您需要有一个数组,按照首选顺序存储密钥(字典没有任何不良的排序),然后迭代您的密钥和逐个手动打印字典项(可能使用键阵列上的列表解析).



1> Son of a Bea..:

您没有说明打印时对您重要的内容,也没有说明您当前正在尝试打印的内容.

字典中没有格式.代码中的任何格式化仅仅是为了使代码看起来像人类可读并且实际上并未存储在您的data字典中(仅保留每个字符串元素内的格式,即,在一对引号之间).

如果它只是您关注的格式(多行和缩进),解决这个问题的最简单方法是使用漂亮打印模块或JSON模块 - 要么应该完成工作,这取决于您对工作方式的偏好希望数据看起来以及您希望对打印输出格式有多少控制.特别是,JSON输出占据了更多的垂直屏幕空间,但有些人可能认为它略微更具人性化.

PrettyPrint pprint:

import pprint
data={"name":'name',"description": "This is my offering","icon":"/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library","version": "1.0.0","design": {"@self": "@self"}}
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(data)
>>> 
{   'description': 'This is my offering',
    'design': {   '@self': '@self'},
    'icon': '/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library',
    'name': 'name',
    'version': '1.0.0'}
>>>

JSON转储:

import json
data={"name":'name',"description": "This is my offering","icon":"/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library","version": "1.0.0","design": {"@self": "@self"}}
print(json.dumps(data, indent=4))
>>> 
{
    "icon": "/csa/api/blobstore/Magic_RGB_blue_NT.png?tag=library", 
    "design": {
        "@self": "@self"
    }, 
    "name": "name", 
    "version": "1.0.0", 
    "description": "This is my offering"
}
>>> 

如果您担心项目的打印顺序,那么您需要有一个数组,按照首选顺序存储密钥(字典没有任何不良的排序),然后迭代您的密钥和逐个手动打印字典项(可能使用键阵列上的列表解析).

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有