Python写一个简单的在线编辑器

 更新时间:2022年02月07日 08:37:30   作者:潘道熹  
这篇文章主要介绍了如何利用Python写一个简单的在线编辑器,主要通过pywebio程序,实现了Python的简陋在线编辑器,需要的小伙伴可以参考一下,希望对你有所帮助

直接奔入主题看下面pywebio程序,实现了Python的简陋在线编辑器

from pywebio.input import *
from pywebio.output import put_text
from os import system,remove
try:
    code = textarea('Code Edit Online', code={'mode': "python",'theme': 'darcula'}, value='# input your code here\n')
    with open('temp.py','w',encoding = 'utf-8') as f:
        f.write(code)
    system('python temp.py')
    put_text('成功运行程序')
except Exception as e:
    put_text('运行:错误 at %s' % e)

主要使用了pywebio程序,实现了Python的简陋在线编辑器。
相对C++编辑器就比较复杂,需要调用g++.exe,可能在您的电脑上,就不见得能用了,需要把Dev-C++安装到我这个位置,程序才可以运行,您可以修改程序。

from pywebio.input import *
from pywebio.output import put_text
from sys import path
from os import system,remove
try:
    system('chcp 65001 >nul')
    code = textarea('Code Edit Online ( C++ )', code={'mode': "python",'theme': 'darcula',}, value='// input your code here.\n')
    with open('temp.cpp','w',encoding='utf-8') as f:
        f.write(code)
    put_text('成功运行程序')
    system(r'D:\Dev-C++\Dev-cpp\MinGW64\bin\g++.exe "%s\temp.cpp" -o "%s\temp.exe" && call "%s\temp.exe" && pause' % (path[0],path[0],path[0]))
    remove('temp.cpp')
    remove('temp.exe')
except Exception as e:
    put_text('运行:错误 at %s' % e)

运行时会报一个错,不用管它,跟咱们的程序无关。如果不是这个错,那就是您的程序有BUG

from pywebio.input import *
from pywebio.output import put_text
from sys import path
from os import system,remove
try:
    system('chcp 65001 >nul')
    code = textarea('Code Edit Online ( C++ )', code={'mode': "python",'theme': 'darcula',}, value='// input your code here.\n')
    with open('temp.cpp','w',encoding='utf-8') as f:
        f.write(code)
    put_text('成功运行程序')
    system(r'D:\Dev-C++\Dev-cpp\MinGW64\bin\g++.exe "%s\temp.cpp" -o "%s\temp.exe" && call "%s\temp.exe" && pause' % (path[0],path[0],path[0]))
    remove('temp.cpp')
    remove('temp.exe')
except Exception as e:
    put_text('运行:错误 at %s' % e)

测试程序,直接运行第一个,输入一段Python代码:

maxNumber = 100
numbers = []
min = 2
numberSum = 0
for i in range(1,101):
    numbers.append(i)
    
while min <= maxNumber:
    is_prime = True
    for i in range(2,min):
        if (min % i) == 0:
            is_prime = False
            break
    if is_prime == True:
        numbers.remove(min)
    min += 1
print(numbers)

点击蓝色按钮,观察控制台:

成功。

再测C++,测试代码如下(C++:画桃心):

// Author:PanDaoxi
#include <iostream>
using namespace std;
int main(){
    for(double y=1.5;y>-1.5;y-=0.1){
        for(double x=-1.5;x<1.5;x+=0.05){
            double a=x*x+y*y-1;
            char b=(a*a*a-x*x*y*y*y<=0.0?'*':' ');
            cout<<b;
        }
        cout<<endl;
    }
    
    return 0;
}

输入测试程序并提交,观察控制台:

控制台上多了个大桃心,成功运行。

到此这篇关于Python写一个简单的在线编辑器的文章就介绍到这了,更多相关Python写线编辑器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python构建区块链的方法详解

    Python构建区块链的方法详解

    区块链(Blockchain)是一种分布式账本(listributed ledger),它是一种仅供增加(append-only),内容不可变(immutable)的有序(ordered)链式数据结构,该数据结构由网络中的一系列节点共同维护,并且这些节点之间互不信任
    2023-02-02
  • python3爬虫获取html内容及各属性值的方法

    python3爬虫获取html内容及各属性值的方法

    今天小编就为大家分享一篇python3爬虫获取html内容及各属性值的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python 两种方法修改文件的创建时间、修改时间、访问时间

    python 两种方法修改文件的创建时间、修改时间、访问时间

    这篇文章主要介绍了python 如何修改文件的创建时间、修改时间、访问时间的两种方法,帮助大家更好的利用python处理文件,感兴趣的朋友可以了解下
    2020-09-09
  • django restframework使用redis实现token认证

    django restframework使用redis实现token认证

    本文主要介绍了django restframework使用redis实现token认证,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 仅用500行Python代码实现一个英文解析器的教程

    仅用500行Python代码实现一个英文解析器的教程

    这篇文章主要介绍了仅用500行Python代码实现一个英文解析器的教程,自然语言处理近来也是业界中一个热门课题,作者为NLP方向的开发者,需要的朋友可以参考下
    2015-04-04
  • 详析Python面向对象中的继承

    详析Python面向对象中的继承

    这篇文章主要详析Python面向对象中的继承,类继承作为python的三大特性之一,在我们学习python的时候是必不可少的。使用类继承,能够大大减少重复代码的编写,下文详细内容需要的小伙伴可以参考一下
    2022-03-03
  • Python数据结构之Array用法实例

    Python数据结构之Array用法实例

    这篇文章主要介绍了Python数据结构之Array用法实例,较为详细的讲述了Array的常见用法,具有很好的参考借鉴价值,需要的朋友可以参考下
    2014-10-10
  • Python制作表白爱心合集

    Python制作表白爱心合集

    这篇文章主要介绍了几个表白小项目合集,有爱心表白、爱心树等。文中的示例代码讲解详细,对我们学习Python有一定的价值,需要的可以参考一下
    2022-01-01
  • Python判断空的五种方法

    Python判断空的五种方法

    本文介绍了多种在Python中判断变量是否为空的方法,包括if语句、len()函数、not关键字、bool()函数和try...except语句等,具有一档的参考价值,感兴趣的可以了解一下
    2024-12-12
  • python中的各种运算符介绍

    python中的各种运算符介绍

    这篇文章主要介绍了python中的各种运算符,主要包括内容有比较运算符、​赋值运算符、位运算符、逻辑运算符、​成员运算符的相关介绍,需要的小伙伴可以参考一下
    2022-04-04

最新评论