python 保存json时最后一个多了一个逗号_从json obj的最后一个对象中删除逗号

不要用Jinja2手动生成JSON。您不可能希望在所有情况下都生成save和valid JSON。在

在较大的模板中嵌入JSON时,使用^{} built-in filter生成JSON。它不包括尾随逗号。在

我会把现成的字典和两个清单的乘积一起递过去:uri_per_metric = [{'met': m, 'uri': u} for u in uri for m in metric_value]

在模板中使用

^{pr2}$

演示:>>> from jinja2 import Template

>>> uri = ["example1.com", "example2.com"]

>>> metric_value = [1024, 2048]

>>> uri_per_metric = [{'met': m, 'uri': u} for u in uri for m in metric_value]

>>> template = Template('''\

...

... data = {{ uri_per_metric|tojson(indent=4) }};

...

... ''')

>>> payload = template.render(uri_per_metric=uri_per_metric)

>>> print(payload)

data = [

{

"met": 1024,

"uri": "example1.com"

},

{

"met": 2048,

"uri": "example1.com"

},

{

"met": 1024,

"uri": "example2.com"

},

{

"met": 2048,

"uri": "example2.com"

}

];

当然,如果您正在生成一个application/json响应(只从web端点返回JSON数据),而这不是更大模板的一部分,那么使用templating根本就不是一个好主意。在这种情况下,使用web框架可能具有的专用JSON支持,例如Flask's ^{} response factory method,或者直接用json.dumps()生成输出。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Last login: Fri Jul 14 16:46:34 on ttys000 jeongyiii@Jeongyiii-2 ~ % cd Downloads jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Traceback (most recent call last): File "json2xml.py", line 56, in <module> process_json_file(file_path) File "json2xml.py", line 50, in process_json_file dataframe_to_excel(expanded_df, excel_file_path) File "json2xml.py", line 32, in dataframe_to_excel writer.save() AttributeError: 'OpenpyxlWriter' object has no attribute 'save' jeongyiii@Jeongyiii-2 Downloads % vim json2xml.py jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Excel file generated: example.xlsx jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Excel file generated: example.xlsx jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Excel file generated: example.xlsx jeongyiii@Jeongyiii-2 Downloads % vim json2xml.py jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Excel file generated: example.xlsx jeongyiii@Jeongyiii-2 Downloads % python3 json2xml.py Excel file generated: example.xlsx jeongyiii@Jeongyiii-2 Downloads % vim json2xml.py jeongyiii@Jeongyiii-2 Downloads % vim json2xml.py def process_json_file(file_path): # Read JSON file json_data = read_json_file(file_path) # Parse JSON object json_obj = json.loads(json_data) # Convert JSON data to DataFrame df = json_to_dataframe(json_obj) # Expand the 'template' column expanded_df = expand_template_column(df) # Write to Excel file excel_file_path = file_path.replace('.json', '.xlsx') dataframe_to_excel(expanded_df, excel_file_path) print("Excel file generated:", excel_file_path) # Usage example file_path = 'example.json' process_json_file(file_path) 将template列的分隔符,由,改为;
最新发布
07-15

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值