python flask 返回中文乱码

news2024/10/7 4:24:23

使用flask返回数据中带有中文的时候会显示成乱码(ascii),

中文报文:

ABAP中的三大财务报表是:

* **资产负债表**
* **收入证明**
* **现金流量表**

这些报表全面概述了公司的财务状况和业绩。

* **资产负债表**显示公司在特定时间点的资产、负债和股东权益。这是公司财务健康状况的缩影。
* **损益表**显示公司在一段时间内的收入、支出和利润。它是衡量公司盈利能力的指标。
* **现金流量表**显示公司在一段时间内的现金流入和流出。它是衡量公司流动性的指标。

这三个陈述是相互关联的。资产负债表提供了损益表的起点,损益表提供了编制现金流量表所需的信息。

ABAP 提供了许多可用于创建和分析这些财务报表的函数和报告。

以下是每个声明内容的简要概述:

**资产负债表**

* 资产:这部分列出了公司的资产,即公司拥有或控制的资产。资产分为流动资产和非流动资产。
* 负债:本节列出公司的负债,即公司他人的债务。负债分为流动负债和非流动负债。
* 股东权益:这部分显示公司股东投资于公司的金额,加上公司尚未分配给股东的累计利润。

**收入证明**

* 收入:这部分显示公司通过销售商品或服务赚取的金额。
* 费用:这部分显示公司用于销售商品成本、运营费用和其他费用的金额。
* 损益:这部分显示公司当期的损益。

**现金流量表**

* 经营活动:这部分显示公司经营活动的现金流入和流出,例如销售、采购和费用。
* 投资活动:本节显示公司投资活动(例如资产购买和出售)的现金流入和流出。
* 融资活动:本节显示公司融资活动(例如发行债务和偿还债务)的现金流入和流出。

我希望这有帮助!

乱码报文:
"ABAP\u4e2d\u7684\u4e09\u5927\u8d22\u52a1\u62a5\u8868\u662f\uff1a\n\n* **\u8d44\u4ea7\u8d1f\u503a\u8868**\n* **\u6536\u5165\u8bc1\u660e**\n* **\u73b0\u91d1\u6d41\u91cf\u8868**\n\n\u8fd9\u4e9b\u62a5\u8868\u5168\u9762\u6982\u8ff0\u4e86\u516c\u53f8\u7684\u8d22\u52a1\u72b6\u51b5\u548c\u4e1a\u7ee9\u3002\n\n* **\u8d44\u4ea7\u8d1f\u503a\u8868**\u663e\u793a\u516c\u53f8\u5728\u7279\u5b9a\u65f6\u95f4\u70b9\u7684\u8d44\u4ea7\u3001\u8d1f\u503a\u548c\u80a1\u4e1c\u6743\u76ca\u3002\u8fd9\u662f\u516c\u53f8\u8d22\u52a1\u5065\u5eb7\u72b6\u51b5\u7684\u7f29\u5f71\u3002\n* **\u635f\u76ca\u8868**\u663e\u793a\u516c\u53f8\u5728\u4e00\u6bb5\u65f6\u95f4\u5185\u7684\u6536\u5165\u3001\u652f\u51fa\u548c\u5229\u6da6\u3002\u5b83\u662f\u8861\u91cf\u516c\u53f8\u76c8\u5229\u80fd\u529b\u7684\u6307\u6807\u3002\n* **\u73b0\u91d1\u6d41\u91cf\u8868**\u663e\u793a\u516c\u53f8\u5728\u4e00\u6bb5\u65f6\u95f4\u5185\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\u5b83\u662f\u8861\u91cf\u516c\u53f8\u6d41\u52a8\u6027\u7684\u6307\u6807\u3002\n\n\u8fd9\u4e09\u4e2a\u9648\u8ff0\u662f\u76f8\u4e92\u5173\u8054\u7684\u3002\u8d44\u4ea7\u8d1f\u503a\u8868\u63d0\u4f9b\u4e86\u635f\u76ca\u8868\u7684\u8d77\u70b9\uff0c\u635f\u76ca\u8868\u63d0\u4f9b\u4e86\u7f16\u5236\u73b0\u91d1\u6d41\u91cf\u8868\u6240\u9700\u7684\u4fe1\u606f\u3002\n\nABAP \u63d0\u4f9b\u4e86\u8bb8\u591a\u53ef\u7528\u4e8e\u521b\u5efa\u548c\u5206\u6790\u8fd9\u4e9b\u8d22\u52a1\u62a5\u8868\u7684\u51fd\u6570\u548c\u62a5\u544a\u3002\n\n\u4ee5\u4e0b\u662f\u6bcf\u4e2a\u58f0\u660e\u5185\u5bb9\u7684\u7b80\u8981\u6982\u8ff0\uff1a\n\n**\u8d44\u4ea7\u8d1f\u503a\u8868**\n\n* \u8d44\u4ea7\uff1a\u8fd9\u90e8\u5206\u5217\u51fa\u4e86\u516c\u53f8\u7684\u8d44\u4ea7\uff0c\u5373\u516c\u53f8\u62e5\u6709\u6216\u63a7\u5236\u7684\u8d44\u4ea7\u3002\u8d44\u4ea7\u5206\u4e3a\u6d41\u52a8\u8d44\u4ea7\u548c\u975e\u6d41\u52a8\u8d44\u4ea7\u3002\n* \u8d1f\u503a\uff1a\u672c\u8282\u5217\u51fa\u516c\u53f8\u7684\u8d1f\u503a\uff0c\u5373\u516c\u53f8\u6b20\u4ed6\u4eba\u7684\u503a\u52a1\u3002\u8d1f\u503a\u5206\u4e3a\u6d41\u52a8\u8d1f\u503a\u548c\u975e\u6d41\u52a8\u8d1f\u503a\u3002\n* \u80a1\u4e1c\u6743\u76ca\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u80a1\u4e1c\u6295\u8d44\u4e8e\u516c\u53f8\u7684\u91d1\u989d\uff0c\u52a0\u4e0a\u516c\u53f8\u5c1a\u672a\u5206\u914d\u7ed9\u80a1\u4e1c\u7684\u7d2f\u8ba1\u5229\u6da6\u3002\n\n**\u6536\u5165\u8bc1\u660e**\n\n* \u6536\u5165\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u901a\u8fc7\u9500\u552e\u5546\u54c1\u6216\u670d\u52a1\u8d5a\u53d6\u7684\u91d1\u989d\u3002\n* \u8d39\u7528\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u7528\u4e8e\u9500\u552e\u5546\u54c1\u6210\u672c\u3001\u8fd0\u8425\u8d39\u7528\u548c\u5176\u4ed6\u8d39\u7528\u7684\u91d1\u989d\u3002\n* \u635f\u76ca\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u5f53\u671f\u7684\u635f\u76ca\u3002\n\n**\u73b0\u91d1\u6d41\u91cf\u8868**\n\n* \u7ecf\u8425\u6d3b\u52a8\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u7ecf\u8425\u6d3b\u52a8\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\uff0c\u4f8b\u5982\u9500\u552e\u3001\u91c7\u8d2d\u548c\u8d39\u7528\u3002\n* \u6295\u8d44\u6d3b\u52a8\uff1a\u672c\u8282\u663e\u793a\u516c\u53f8\u6295\u8d44\u6d3b\u52a8\uff08\u4f8b\u5982\u8d44\u4ea7\u8d2d\u4e70\u548c\u51fa\u552e\uff09\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\n* \u878d\u8d44\u6d3b\u52a8\uff1a\u672c\u8282\u663e\u793a\u516c\u53f8\u878d\u8d44\u6d3b\u52a8\uff08\u4f8b\u5982\u53d1\u884c\u503a\u52a1\u548c\u507f\u8fd8\u503a\u52a1\uff09\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\n\n\u6211\u5e0c\u671b\u8fd9\u6709\u5e2e\u52a9\uff01"

在这里插入图片描述
解决办法:
在flask中用jsonify转换后再返回

# -*- coding: utf-8 -*-
# coding:unicode_escape
#Created on 2023年5月15日

#@author: LinHuang
from flask import Flask,request,jsonify
from flask_restful import reqparse, abort, Api, Resource
import urllib.request 
from googleapiclient.discovery import build
from flask_cors import CORS
import json
import os
from bardapi import Bard
os.environ["_BARD_API_KEY"] = 'XXX'
os.environ['LANG'] = 'en_US.UTF-8' # 设置编码方式
bardToken = 'XXX'
app = Flask(__name__)
api = Api(app)
app.config['JSON_AS_ASCII'] = False
parser = reqparse.RequestParser()
parser.add_argument('input_text', type=str)

def set():
	return ''
class BardApi(Resource):
  def get(self):
      args = parser.parse_args()
      return "你好Bard"
  def post(self):
      args = parser.parse_args()
      q = args['input_text'];
      bard = Bard(token=bardToken, language='chinese (simplified)')
      res = bard.get_answer(q)
      content = res['content']
      jstr=jsonify(content)
      print(jstr)
      return jstr

api.add_resource(BardApi, '/')

if __name__ == '__main__':
    print('bard api is running!')    
    CORS(app, resources=r'/*')
    app.run(debug=False,host="0.0.0.0",port="5001")

显示正常
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/766821.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

招聘小程序制作:连接人才与企业

随着人才市场的竞争日益激烈,招聘小程序成为了企业寻找优秀人才和求职者找到理想工作的重要工具。通过招聘小程序,企业可以发布招聘信息、筛选简历,而求职者可以浏览职位、提交简历等。 招聘小程序的好处 精准匹配人才:招聘小程序…

【SpringBoot】从零开始封装自己的starter并且引入到其他项目中使用

从零开始封装自己的starter并且引入到其他项目中使用 简介 本文将介绍如何从零开始封装自己的starter并且引入到其他项目中使用 为什么要自己封装starter? 这样可以对spring以及其他第三方提供的starter做二次封装或者封装一些自己需要的内容提供给其他项目使用&…

实现大文件远程传输、备份和共享的小秘诀

随着公司规模的增长和业务量的提升,大文件远程传输、备份和共享已经成为了公司必须处理的重要问题。大文件传输和备份涉及到数据安全、数据传输速度、存储空间等多个方面,是一项复杂而又艰巨的任务。本文将从技术层面出发,介绍如何实现大文件…

C# OpenCvSharp+DlibDotNet 人脸替换 换脸

效果 Demo下载 项目 VS2022.net4.8OpenCvSharp4DlibDotNet 相关介绍参考 代码 using DlibDotNet; using OpenCvSharp.Extensions; using OpenCvSharp; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Dra…

开发与测试的相杀相爱

无论开发或测试,都只是一份工作,要认真工作但不要私人感情。若是不下心产生了仇恨心理,请公私分明,在心里扎小人吧;若是产生了不可描述的感情,请低调点,毕竟IT工作已经很辛苦,不能再…

After Effects应该如何选择笔记本电脑?(专家指南)

与其他视觉效果软件相比,After Effects 对笔记本电脑显卡的依赖程度不如对 CPU 的依赖程度。单核性能对于 After Effects 来说非常重要。 然而,这并不意味着您的 GPU 不重要,由于强大的 GPU,某些效果的表现要好得多。简而言之&a…

Authing 入选长城战略咨询《2023 中国潜在独角兽企业》报告

2023 年 6 月 20 日,长城战略咨询(GEI)发布《2023 中国潜在独角兽企业研究》报告。Authing 作为国内首家身份云(IDaaS)厂商入选中国潜在独角兽企业榜单。独角兽企业指具有发展速度快、数量稀少、备受投资者青睐等属性的…

Baklib VS Helplook,企业帮助中心搭建软件对比

2023年,搭建帮助文档的方法与之前相比发生了质的变化,许多企业产品不再依托于传统的方式-本地文档、实体操作手册书,而是选择寻找工具搭建一个在线文档,直接搭建一个在线的帮助中心,用户直接可以访问查阅解决方案。Bak…

【C++初阶】list的模拟实现 附源码

一.list介绍 list底层是一个双向带头循环链表,这个我们以前用C语言模拟实现过,->双向带头循环链表 下面是list的文档介绍: list文档介绍 我们会根据 list 的文档来模拟实现 list 的增删查改及其它接口。 二.list模拟实现思路 既然是用C模拟…

Vue-Router相关理解4

两个新的生命周期钩子 activated和deactivated是路由组件所独有的两个钩子&#xff0c;用于捕获路由组件的激活状态具体使用 activated路由组件被激活时触发 deactivated路由组件失活时触发 src/pages/News.vue <template><ul><li :style"{opacity}&qu…

前端vue项目,加入pre-commit格式化工具prettier

husky工具 husky是一个工具&#xff0c;帮我们处理git hooks&#xff0c;在我们提交代码时候运行我们想要的脚本。工作原理是&#xff1a; 在package.json中加入对象&#xff0c;配置husky运行脚本。husky会决定在我们git的生命周期哪个阶段来运行。 安装husky: npm install …

聊聊用户故事的估算和拆解

这是鼎叔的第六十七篇原创文章。行业大牛和刚毕业的小白&#xff0c;都可以进来聊聊。 欢迎关注本专栏和微信公众号《敏捷测试转型》&#xff0c;星标收藏&#xff0c;大量原创思考文章陆续推出。 对于Scrum和用户故事实践的最大难点&#xff0c;我相信是如何估算用户故事的大…

数据可视化揭示人口趋势:从数字到图像的转变

人口是一个关乎我们生活的重要话题&#xff0c;而数据可视化技术为我们提供了一种全新的方式来理解和解读人口变化的趋势。通过将大量的人口数据转化为直观的图表和图像&#xff0c;数据可视化帮助我们更好地观察、分析和解释人类发展的重要特征。 数据可视化揭示人口趋势的第一…

Linux: USB Gadget 驱动简介

文章目录 1. 前言2. 背景3. USB Gadget 驱动3.1 什么是 USB Gadget 驱动&#xff1f;3.2 USB Gadget 驱动框架3.3 USB 设备控制器(UDC) 驱动3.3.1 USB 设备控制器(UDC) 驱动 概述3.3.2 USB 设备控制器(UDC) 驱动示例 3.4 USB Gadget Function 驱动3.5 USB Gadget 驱动3.5.1 USB…

针对文件内容匹配,过滤,排序

grep 过滤&#xff0c;针对文本内容进行过滤&#xff0c;也就是查找 grep -i 忽略大小写&#xff0c;默认的可以不加 grep -n 显示匹配行号 grep -c 只统计匹配的行数 grep -v ,取反&#xff0c;查找的内容不显示 grep的作用就是过滤文本内容&#xff0c;是针对行来进行处理…

navicate_windows_14

1.新建文本文档2.输入如下内容 echo off set dnInfo set dn2ShellFolder set rpHKEY_CURRENT_USER\Software\Classes\CLSID :: reg delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Registration14XCS /f %针对<strong><font color"#FF0000"…

​python接口自动化(四十二)- 项目架构设计之大结局(超详解)​

简介 这一篇主要是将前边的所有知识做一个整合&#xff0c;把各种各样的砖块---模块&#xff08;post请求&#xff0c;get请求&#xff0c;logging&#xff0c;参数关联&#xff0c;接口封装等等&#xff09;垒起来&#xff0c;搭建一个房子。并且有很多小伙伴对于接口项目测试…

spring复习:(40)全注解的spring AOP

零、需要的依赖&#xff1a; <dependency><groupId>org.aspectj</groupId><artifactId>aspectjrt</artifactId><version>1.8.9</version></dependency><dependency><groupId>org.aspectj</groupId><arti…

TikTok正在测试“商店”直播功能!这次能成功吗?

Tik Tok作为世界上增长最快的中国社交媒体平台&#xff0c;越南、印尼、日本、印度、美国……它每登录一个国家&#xff0c;都能极快地占领当地民众的手机屏幕&#xff0c;在极短的时间内成为现象级的产品。 可以说只用了短短3年的时间&#xff0c;Tik Tok就火遍了全球&#x…

整数拆分(力扣)动态规划 JAVA

给定一个正整数 n &#xff0c;将其拆分为 k 个 正整数 的和&#xff08; k > 2 &#xff09;&#xff0c;并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。 示例 1: 输入: n 2 输出: 1 解释: 2 1 1, 1 1 1。 示例 2: 输入: n 10 输出: 36 解释: 10 3 3 4…