python 在线编译器
import os, sys, subprocess, timeclass AdvanceQuery(object):def __init__(self):self.TempFile = "media/advance_query"# 文件名self.FileNum = int(time.time() * 1000)# python编译器位置self.EXEC = sys.executable# 获取python版本def get_version(self):v = sys.version_infoversion = "python %s.%s" % (v.major, v.minor)return version# 获得py文件名def get_pyname(self):return '%d' % self.FileNum# 接收代码写入文件def write_file(self, pyname, code):if not os.path.exists(self.TempFile):os.mkdir(self.TempFile)fpath = os.path.join(self.TempFile, '%s.py' % pyname)with open(fpath, 'w', encoding='utf-8') as f:f.write(code)# print('file path: %s' % fpath)return fpath# 编码def decode(self, s):try:return s.decode('utf-8')except UnicodeDecodeError:return s.decode('gbk')def query_main(self, code):r = dict()r["version"] = self.get_version()pyname = self.get_pyname()fpath = self.write_file(pyname, code)try:# subprocess.check_output 是 父进程等待子进程完成,返回子进程向标准输出的输出结果# stderr是标准输出的类型"""subprocess.check_output(args, *, stdin=None, stderr=None, shell=False, universal_newlines=False)父进程直接创建子进程执行程序,以字符串的形式返回子进程的输出。"""outdata = self.decode(subprocess.check_output([self.EXEC, fpath], stderr=subprocess.STDOUT, timeout=5))except subprocess.CalledProcessError as e:# e.output是错误信息标准输出# 错误返回的数据r["code"] = 'Error'r["output"] = self.decode(e.output)return relse:# 成功返回的数据r['output'] = outdatar["code"] = "Success"return rfinally:# 删除文件(其实不用删除临时文件会自动删除)try:os.remove(fpath)except Exception as e:exit(1)# 显示csv列表def csv_list(self):path = os.getcwd()alist = []for i in os.listdir(os.path.join(path, "csv")):# print(os.path.join(path, "csv"))if i.split(".")[1] == "csv":alist.append(i)data = {"csv_list": alist}return data# 根据csv返回相应语句显示def show_statement(self, st):if st:data = 'import pandas as pd\ndp = pd.read_csv("csv/%s")' % streturn data
python 在线编译器相关推荐
- python在线编辑器最新_skulpt搭建Python在线编译器(一):下载、安装
1.python在线编译器的解决方案 方案一:vscode web版(vscode online) 大名鼎鼎的vscode 推出了web版,也就是说可以在网页上进行编程了. github地址:http ...
- python3在线编程、python3在线编译器、在线编辑器_skulpt搭建Python在线编译器(一):下载、安装...
1.python在线编译器的解决方案 方案一:vscode web版(vscode online) 大名鼎鼎的vscode 推出了web版,也就是说可以在网页上进行编程了. github地址:http ...
- 有没有那种python在线编译器_推荐几个好用的在线编译器
前言 为什么要使用在线编译器呢?有时候自己的电脑不在身边,或者又不想打开IDE,或者本身就没有安装某种语言的编译环境,只想写个小demo验证点东西,在线编译器就很方便了:对于初学者而言,也可以很方便的 ...
- python在线编译-python在线编译器的简单原理及简单实现代码
我们先来看一下效果(简单的写了一个): 原理:将post请求的代码数据写入了服务器的一个文件,然后用服务器的python编译器执行返回结果 实现代码: #flaskrun.py # -*- codin ...
- 在线python编程编译器-python在线编译器的简单原理及简单实现代码
我们先来看一下效果(简单的写了一个): 原理:将post请求的代码数据写入了服务器的一个文件,然后用服务器的python编译器执行返回结果 实现代码: #flaskrun.py # -*- codin ...
- python在线编译器简单实现
因为项目,需要在网页中嵌入编译器.这个分为两部分,前端单独编译器及后端flask服务,前端编译器部分可参考:https://blog.csdn.net/qq_37193537/article/deta ...
- 西瓜创客python在线编译器_西瓜创客在线少儿编程 - 课程
${content} 你输入的邮件地址曾经通过${type}激活了本站帐号,请使用${type}帐号直接登录. 课程习题 : 提示 请选择一个答案 提交 查看正确答案 下一题 ${option}: $ ...
- 西瓜创客python在线编译器_西瓜创客在线少儿编程 - 主页
${content} 你输入的邮件地址曾经通过${type}激活了本站帐号,请使用${type}帐号直接登录. 课程习题 : 提示 请选择一个答案 提交 查看正确答案 下一题 ${option}: $ ...
- 在线python编程编译器-在线编译或编辑Python的5个最佳工具
离线Python编辑器和编译器都具有许多功能,但是在线编译器通常在功能上受到限制,并试图满足特定需求而不是满足所有需求,其中在线编译大多数是免费的,所以也受到开发者的热爱. 在本文中,我们将浏览各种狂 ...
- python小项目:实现C语言在线编译器
大家好,我是牛牛. 今天给大家分享一下利用python制作C语言在线编译器的小案例,主要包含以下几部分内容: 1.项目构建与准备 2.搭建python服务器 3.前端页面与逻辑实现 4.服务端代码逻辑 ...
最新文章
- java 关键字(面试题)
- R语言ggplot2可视化自定义图例实战:添加自定义的图例、添加填充色的图例
- python json包_python编程 之 json包
- 在网页中通过百度地图查看某地的经纬度
- 【Java】什么是多态?多态的实现机制是什么?
- requestAnimationFrame 优化Web动画
- AcWing 1750. 救生员(差分+暴力枚举)
- 35. 源码与 Tarball
- 漏洞补丁:漏洞命名(CVE和CNNVD)及补丁查找
- vue3+ts封装echarts
- VMWare Fusion 安装 Centos7操作系统
- HCIA-Cloud Computing华为云计算IA认证笔记
- 仿豌豆荚实现android连接pc方法
- VMware拟收购云应用管理服务商Wavefront
- 影响应用商城搜索排名的因素
- LeetCode 299. Bulls and Cows(公牛和母牛)
- KodBox_v1.15_学习笔记
- 4个最好的在线漫画生成器,轻松创作漫画
- 微信小程序【人脸识别功能】
- 简单的35选7彩票系统