请问如何将Python异常信息转化为中文?

本人打算做一个网页代码编辑器,能够在网页上写代码并执行。


其中有个特殊要求是 要对执行python代码产生的异常转化为中文显示出来。


后端采用python开发。部分代码如下:

import sys
import os
from io import StringIO
import contextlib
import subprocess


@contextlib.contextmanager
def stdoutIO(stdout=None):
    old = sys.stdout
    if stdout is None:
        stdout = StringIO()
    sys.stdout = stdout
    yield stdout
    sys.stdout = old


def get_stdin():
    buf = ""
    for line in sys.stdin:
        buf = buf + line
    return buf


if __name__ == "__main__":
    st = get_stdin()
    # print(st)
    with stdoutIO() as s:
        try:
            tmpfold = os.getenv("TMPDIR", "/tmp")
            tmpfile = "%s/%s" % (tmpfold, "script.py")
            # print(tmpfile)
            f = open(tmpfile, 'w')
            print(st, file=f)
            f.close()
            p1 = subprocess.Popen(["python3", tmpfile], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
            p2, p3 = p1.stdout.read().decode('utf-8'), p1.stderr.read().decode('utf-8')
            if len(p2) > 0:
                print(p2)
            else:
                print(p3)
        except BaseException as e:
            print(e)
    print(s.getvalue())



这段代码能够正常运行,但是执行客户端传来的python代码后还是python原本的异常信息,上面的p3就是执行后产生的异常信息。


我想把这些异常信息转化为中文,请问有什么好的方法吗?


2个回答

图片说明图片说明

去谷歌翻译那里翻译一下不久好了吗

qq_42276781
Toblerone_Wind 我觉得你可以试试这个思路:先在网上归纳找出py出错的十几类错误提示,将实际的出错内容的错误提示与已有的进行匹配,接着翻译后面的描述性英文。而且谷歌翻译并不会将英文全部翻译成中文,你可以试试。这样的好处是,对于每一类错误提示,你可以附加上相应的解决方法。
12 个月之前 回复
qq_38139619
qq_38139619 可能我没表达清楚,我是想将英文的异常信息转化为中文的。并不一定是直接从英文翻译过来,比如traceback中的具体出错代码还是按照原先显示,只讲描述性信息转化为中文
12 个月之前 回复

异常信息的提示是你所用的工具已经打包好了的,要改只能改源码,不过不希望你这么做,你可以用翻译软件区翻译这些提示

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Python+OpenCV计算机视觉

Python+OpenCV计算机视觉

python 将列表转化为元组,为什么没有啥变化

![图片说明](https://img-ask.csdn.net/upload/201905/12/1557655829_720269.png)

请问python中如何将字符转化成16进制数字?

我现在要做CRC检测,有一段字符 ``` '8e00002f18ffe31b', ``` 然后分成' ``` 8','e','0'..........'3','1','b' ``` 然后将它们识别成16进制数字, 例如转化成10进制为 ``` 8,14,0,........3,1,11 ``` 现在不知该怎么转,直接转化会转成ASCII码,比如转化为10进制, a会转化成97,而我想转换为10. 大佬救我

求将txt格式转化为excel格式的python编程,谢谢各位大神

我这里有大量的txt数据,不知道怎么方便的转化成excel格式,求一段python的程序,或者有什么其他好的方法,都可以

Python怎么将列表,或者txt文件输出转化为字典啊?

![图片说明](https://img-ask.csdn.net/upload/201504/22/1429674282_661752.png)就是要将这样的数据转化为一一对应的字典?怎么做啊?我本来是用 for lines0 in rate1.readlines(): coslist1.append(lines0) for line0 in rate2.readlines(): coslist2.append(line0) print (type(coslist2)) cosdic1=dict(coslist1) cosdic2=dict(coslist2) print(type(cosdic1))但是说列表转化不了字典?那我该怎么转化啊?大神们帮菜鸟出出主意

python发生异常后的输出

``` #!/usr/bin/python # -*- coding: UTF-8 -*- # 定义函数 def mye( level ): if level < 1: raise Exception("Invalid level!", level) # 触发异常后,后面的代码就不会再执行 try: mye(0) except "Invalid level!": print 1 else: print 2 ``` 为什么发生异常后不输出‘1’呢?

求将txt转化成excel的python编程

我这里有大量的txt数据,需要转化为excel格式,哪位大神帮忙看看,谢谢![图片说明](https://img-ask.csdn.net/upload/201702/04/1486189614_703511.jpg)

python如何将字符串转化为变量名?

变量名的格式为`link12,link34,link56`这种形式的 例如获得了两个参数 `i='1', j='2'` 如何根据这两个参数找到link12这个变量并cao'zuo

请问如何将python中dataframe里的string全部转化为float?

用pandas读取csv后,做聚类的时候报错如下:could not convert string to float: 'CWT'。把csv里面的这个全都替换掉之后就会显示新别的string无法转换。请问如何一次全都转换成float?

python列表问题,我想将任意列表转化成字符串列表

比如将 ['apple', 'bananas', 5] 转化为 ['apple', 'bananas', '5'] 我的代码如下: ![图片说明](https://img-ask.csdn.net/upload/201811/30/1543513432_541833.png) 但输出结果却是: ![图片说明](https://img-ask.csdn.net/upload/201811/30/1543513460_750698.png) 求大神指教!

在 Python 中将整数转换为字符串?

<div class="post-text" itemprop="text"> <p>I want to convert an integer to a string in Python. I am typecasting it in vain:</p> <pre><code>d = 15 d.str() </code></pre> <p>When I try to convert it to string, it's showing an error like <code>int</code> doesn't have any attribute called <code>str</code>.</p> </div> <p>转载于:https://stackoverflow.com/questions/961632/converting-integer-to-string-in-python</p>

请问Python中如何转化带有字符串的dataframe成纯数字dataframe?

这个问题出现在画热度图的时候,热度图似乎只读数字部分不认字符部分。用pandas包读取的csv数据文件有很多列都是字符,导致无法正常画出热度图。求个转化方法。字符全都是名字或者商品之类的,直接用数字唯一值代替字符唯一值就好。

python 如何将数字类型转化为字符串类型

下面是我的演示,dan'shi'chu'xian'cuo'wu head = '你的分数是:' num = 82 text = head + str(num) +'分' print(text)

python浮点数转化为字符串精度损失

``` f=open('data.txt','w+') for i in range(0,a): for j in range(0,b): for k in range (0,c): f.write(str(dat[i][j][k])) ######float32转string f.write(' ') f.write('\n') f.write('\n') f.close() ``` 因为想保存的是三维数组所以不能直接用np.savetxt, 但是像我这样做文件里有的数字精度就会损失,比如9.99745846e-01会变成0.99974585 请问如果想保留原数字应该怎么办啊

怎样用python把txt文件转化成矩阵

怎样用python把txt文件读入并(多列数据)转化成矩阵,并读取某一列全部数据按大小排序?谢谢!

python中如何将文件中的内容转换为列表?

比如说文件为a.txt,内容为['1', '2', '3'],如何将其内容读出来并赋值给一个列表list呢? 本人采用如下法子,得出的结果却是这样子的 >>> li=[] >>> f=open("c:\\bar\\a.txt","rb") >>> li=f.read().split(",") >>> li [color=red]["['1'", " '2'", " '3']"][/color] 想让li的内容和文件的内容一模一样哇,求大牛帮解答,谢谢啦

Python,pandas的series数据格式转化问题

你好: 我的源数据格式为: ![图片说明](https://img-ask.csdn.net/upload/201811/13/1542099212_203444.jpg) 我想转化为的格式: ![图片说明](https://img-ask.csdn.net/upload/201811/13/1542099281_738098.jpg) 也就是说我想把源数据中每一个数据项中每一个数组中的数据取出来,单独组成一个series 请问pandas中有没有什么合适的方法? 当然一个个取出来然后用for也行,但效率太慢,除了这种方式还有其他方式么? 谢谢~

Python代码执行后抛异常是为什么

![图片说明](https://img-ask.csdn.net/upload/201509/11/1441971407_858122.png) 请问下懂Python的大牛,为什么程序执行完会蹦出一个异常?程序能执行,应该不是代码问题。今天下午遇到两次这个问题了。先谢谢回答了!

将Python语句变成matlab语句

哪位大神能将下面的Python语句转成matlab语句 with open('lala/corel5k_train_list.txt') as f: for i in f.readlines(): image = mpimg.imread('lala/%s.jpeg'%i.strip())

python 控制台输出的异常捕获不到

我使用的模块是 **opcua** , 在运行程序时,将后台服务器关闭,控制台会报出以下错误: ![图片说明](https://img-ask.csdn.net/upload/201911/18/1574042992_363213.png) 程序不会停止,但是我使用except却捕获不到这样的异常,不知大佬们可否为我指点一二。

2019 Python开发者日-培训

2019 Python开发者日-培训

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

设计模式(JAVA语言实现)--20种设计模式附带源码

设计模式(JAVA语言实现)--20种设计模式附带源码

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

java后台+微信小程序 实现完整的点餐系统

java后台+微信小程序 实现完整的点餐系统

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

2019 AI开发者大会

2019 AI开发者大会

玩转Linux:常用命令实例指南

玩转Linux:常用命令实例指南

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Git 实用技巧

Git 实用技巧

Python数据清洗实战入门

Python数据清洗实战入门

使用TensorFlow+keras快速构建图像分类模型

使用TensorFlow+keras快速构建图像分类模型

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

程序员的算法通关课:知己知彼(第一季)

程序员的算法通关课:知己知彼(第一季)

MySQL数据库从入门到实战应用

MySQL数据库从入门到实战应用

机器学习初学者必会的案例精讲

机器学习初学者必会的案例精讲

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

.net core快速开发框架

.net core快速开发框架

玩转Python-Python3基础入门

玩转Python-Python3基础入门

Python数据挖掘简易入门

Python数据挖掘简易入门

微信公众平台开发入门

微信公众平台开发入门

程序员的兼职技能课

程序员的兼职技能课

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

HoloLens2开发入门教程

HoloLens2开发入门教程

微信小程序开发实战

微信小程序开发实战

Java8零基础入门视频教程

Java8零基础入门视频教程

相关热词 c# 解析cad c#数字格式化万 c#int转byte c#格式化日期 c# wpf 表格 c# 实现ad域验证登录 c#心跳包机制 c#使用fmod.dll c#dll vb 调用 c# outlook
立即提问
相关内容推荐