图形化Python编程交互方法、系统及电子设备与流程

文档序号:17441119发布日期:2019-04-17 04:46阅读:569来源:国知局
图形化Python编程交互方法、系统及电子设备与流程

本发明涉及通信技术领域,尤其涉及一种图形化python编程交互方法、系统及电子设备。



背景技术:

随着人工智能和数据科学的普及,计算机科学和编程知识逐渐成为现代社会越来越重要的基础技能,越来越多的工作岗位对代码编程、数据处理等技能有着更高的要求,而python是一种动态的、面向对象的、为计算机程序所设计语言;python编程语言尤其在数据科学、人工智能、编程教育等领域广泛使用,成为21世纪最具影响力的编程语言之一,如今在中国,教育部门已经开始将python语言和编程知识推进越来越多的中学,计算机科学逐渐成为义务教育的一部分。

但是由于所有的程序语言,包括python,都是为了和计算机对话所创造的语言,对于普通的大众来说,都非常艰涩难懂,对于python语言、数据科学、人工智能科学的普及设置了高门槛,阻碍了更多不同年龄不同认知水平的人对python语言和相关计算机科学知识的学习。枯燥的编程界面尤其阻碍了青少年儿童对python语言学习的兴趣,阻碍了教育局对计算机科学的普及。

因此现有技术中进行python编程是基于英语文本的编程语言,学习python编程首先需要学习大量的语法定义,以及逻辑嵌套关系,才能对python语言进行编程,增加了初学者的学习难度,为青少年儿童学习python编程带来了不便。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供一种图形化python编程交互方法、系统及电子设备,旨在解决现有技术中python编程是基于文本进行的编程,初学者的学习难度大,为青少年儿童学习python编程带来了不便的问题。

本发明的技术方案如下:

一种图形化python编程交互系统,应用于图形化python编程客户端,所述系统包括积木编辑模块、文本代码编辑模块、代码转换模块、运行模块和输出模块;

所述积木编辑模块,用于在积木编程模式下,通过拖拽、拼接、组合预先存储的积木,编写python代码;

所述文本代码编辑模块,用于在文本代码编程模式下,通过文本的形式展示和编写python代码;

所述代码转换模块,用于将封装后的积木转换为python代码以及将python代码转换为封装后的积木;

所述运行模块,用于对编写好的python代码进行执行;

所述输出模块,用于输出python代码的运行结果。

可选地,所述所述系统还包括模式切换模块,

所述切换模块,用于切换积木编程模式和文本代码编程模式。

可选地,所述输出模块包括控制台和图形输出模块,

所述控制台用于输出python代码的文字运行结果;

所述图形输出模块用于输出图形化库的python代码的图形运行结果。

可选地,所述系统还包括导航栏模块,

所述导航栏模块用于执行文本操作指令。

可选地,所述积木编辑模块包括积木存储子单元,

所述积木存储子单元用于存储积木,所述积木中预置封装后的python函数。

可选地,所述系统还包括第三方库安装模块,

所述第三方库安装模块用于一键安装第三方库。

本发明又一实施例还提供了一种图形化python编程交互系统的交互方法,应用于图形化python编程客户端,所述方法包括:

检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式,其中,所述python编程界面包括积木编辑区和所述文本代码编辑区;

若python代码编辑模式为积木编程模式,则积木编辑模块获取积木编辑指令,根据积木编辑指令对积木进行编辑,将积木编辑结果实时显示在积木编辑区;

所述代码转换模块获取编辑的积木转换为对应的python代码,并将转换后的python代码同步显示在所述文本代码编辑区;

检测到运行指令后,所述运行模块对编辑后积木对应的python代码进行执行,输出模块输出python代码的运行结果。

可选地,所述检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式,包括:

检测到图形化python编程指令,进入图形化python编程界面;

获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式。

可选地,所述获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式,包括:

判断是否第一次进入图形化编程界面;

若是第一次进入图形化编程界面,则将积木编程模式作为当前python代码编辑模式;

若不是第一次进入图形化编程界面,则获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式。

可选地,检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式,包括:

检测到图形化python编程指令,进入图形化python编程界面,所述图形化python编程指令包括python代码编辑模式;

根据所述图形化python编程指令获取python代码编辑模式。

可选地,所述检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式后,还包括:

若python代码编辑模式为文本代码编程模式,则全屏显示文本代码编辑区;

根据文本代码编辑指令对python代码进行编辑,将编辑结果实时显示在文本代码编辑区。

可选地,所述系统还设置有切换模块,

所述若python代码编辑模式为积木编程模式,则积木编辑模块获取积木编辑指令,根据积木编辑指令对积木进行编辑,将积木编辑结果实时显示在积木编辑区后,包括:

所述切换模块检测到切换指令时,控制切换到文本代码编程模式。

可选地,所述系统还设置有控制台和图形输出模块,

所述检测到运行指令后,所述运行模块对编辑后积木对应的python代码进行执行,输出模块输出python代码的运行结果,包括:

检测到运行指令后,所述运行模块对编辑后积木对应的python代码进行执行;

判断执行后的输出结果为文字还是图形;

若输出结果为文字,则控制台输出python代码的文字运行结果;

若输出结果为图形,则图形输出模块输出图形化库的python代码的图形运行结果。

可选地,所述检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式前,还包括:

预先在积木编辑模块中封装与python函数一一对应的积木并存储。

本发明又一实施例还提供了一种电子设备,所述电子设备包括至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的图形化python编程交互方法。

本发明的另一实施例还提供了一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的图形化python编程交互方法。

本发明的另一种实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执行上述的图形化python编程交互方法。

有益效果:本发明公开了一种图形化python编程交互方法、系统及电子设备,相比于现有技术,本发明实施例通过图形化的积木一一对照python代码,辅助python编程,降低了python编程难度,方便青少年等初学者学习python编程。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1为本发明一种图形化python编程交互系统较佳实施例的结构示意图;

图2为本发明一种图形化python编程交互方法较佳实施例的流程图;

图3为本发明一种电子设备较佳实施例的硬件结构示意图。

具体实施方式

为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。

请参阅图1,图1为本发明一种图形化python编程交互系统的较佳实施例的结构示意图,如图1所示,系统1应用于图形化python编程客户端,系统包括积木编辑模块11、文本代码编辑模块12、代码转换模块13、运行模块14和输出模块15;

其中积木编辑模块用于在积木编程模式下,通过拖拽、拼接、组合预先存储的积木,编写python代码;

文本代码编辑模块用于在文本代码编程模式下,通过文本的形式展示和编写python代码;

代码转换模块用于将封装后的积木转换为python代码以及将python代码转换为封装后的积木;

运行模块,用于对编写好的python代码进行执行;

输出模块,用于输出python代码的运行结果。

具体实施时,图形化python编程客户端中设置有本发明实施例中所描述的图形化python编程交互系统。打开图形化python编程客户端后,进入图形化python编程客户端界面。

其中,系统还包括导航栏模块,导航栏模块用于执行文本操作指令。具体实施时,导航栏模块用于执行一些基础的文本操作,比如保存、新建、另存为等。图形化python编程客户端界面显示有导航栏,导航栏内置有保存、新建、另存为等操作按钮,点击对应的操作,导航栏模块执行对应的文本操作指令。

积木编辑模块在图形化python编辑客户端界面对应的是积木编辑区,在积木编辑区通过拖拽、拼接、组合积木的形式,积木编辑模块通过图形化的编程模式编写python代码。进一步地,积木编辑模块包括积木存储子单元,

积木存储子单元用于存储积木,积木中预置封装后的python函数。积木存储子单元在图形化python编辑客户端界面对应显示为积木存储区,积木存储区预置了封装好的,对应python函数的积木,用户通过拖拽的方式,在积木编辑区拼接和使用这些对应python函数的积木块。

文本代码编辑模块在图形化python编辑客户端界面对应的是文本代码编辑区,文本代码编辑区在文本代码模块的控制下,通过文本的形式展示和编写python代码。文本代码编辑区在积木编程模式下,能在用户的操作下伸展和收缩展示区域。

代码转换模块用于将封装后的积木python代码以及将python代码转换为封装后的积木,这样在文本代码编程模式下编辑的python代码,可转换为积木,在积木编程模式下进行查看或编辑等操作。在积木编程模式下,通过拖拽、拼接、组合形成的积木,也可转换为python文本代码,在文本代码编程模式下也可进行查看或编辑,方便用户根据需要选择对应的编程模式。代码转换模块的工作原理为语法树的关系,实现积木转译成代码,同时代码能转译为积木。

运行模块为运行虚拟按键,在图形化python编程客户端界面点击运行虚拟按键后,运行当前编辑的python代码。

输出模块15包括控制台151和图形输出模块152,控制台用于输出python代码的文字运行结果;图形输出模块用于输出图形化库的python代码的图形运行结果。其中,控制台用于在图形化python编程客户端界面点击运行后,输出python代码的文字运行结果。在运行后,客户端界面从界面下端弹出控制台,运行虚拟按键相应浮动。以图形输出模块为点猫的海龟作图模块为例,在图形化python编程客户端界面的海龟作图模块用于输出turtle海龟等图形化库的代码运行输出区。而海龟作图模块输出结果是通过新建一个窗口进行展示。

系统还包括模式切换模块16,切换模块用于切换积木编程模式和文本代码编程模式。具体地,切换模块为切换按钮,点击切换按钮,可将积木编程模式切换为文本代码编程模式,也可将文本代码编程模式切换为积木编程模式。

进一步地,为了提高图形化python编程客户端的性能及兼容性,需要在图形化python编程客户端安装第三方库,因此系统还包括第三方库安装模块,

第三方库安装模块用于一键安装第三方库。

具体地,第三库安装模块为第三库安装按钮,预先在图形化python编程客户端设置对应的安装组件,检测到第三库安装按钮,则自动对第三方库进行安装,初学者无需自己手动一个一个的安装,方便了初学者学习,提高了python编程效率。

本发明又一实施例还提供了一种图形化python编程交互系统的交互方法,应用于图形化python编程客户端,如图2所示,方法包括:

步骤s100、检测到图形化python编程指令,进入图形化python编程界面,获取python代码编辑模式;

步骤s200、若python代码编辑模式为积木编程模式,则积木编辑模块获取积木编辑指令,根据积木编辑指令对积木进行编辑,将积木编辑结果实时显示在积木编辑区;

步骤s300、代码转换模块获取编辑的积木转换为对应的python代码,并将转换后的python代码同步显示在文本代码编辑区;

步骤s400、检测到运行指令后,运行模块对编辑后积木对应的python代码进行执行,输出模块输出python代码的运行结果。

具体实施时,本发明实施具有两种编程模式,一种是积木编程模式,另一种是文本代码编程模式。积木编程模式方便初学者使用,文本代码编程模式适合有一定python编程基础的人使用。图形化python编程客户端打开后,进入图形化python编程界面。图形化python编程界面包括积木编辑区和文本代码编辑区。在积木编程模式下,积木编辑区显示在图形化python编程界面的左侧,文本代码编辑区显示在图形化python编程界面的右侧。积木编辑区与文本代码编辑区相邻,但互不覆盖。在文本代码编程模式,只显示文本代码编程区,从而显示更多的代码,为编程者编辑复杂的逻辑提供方便。

进一步地,步骤s100前,包括:

预先在积木编辑模块中封装与python函数一一对应的积木并存储。具体实施时,积木编辑模块中预置了封装好的,与python函数一一对应的积木。用户可通过拖拽的方式,在积木编辑区拼接和使用这些对应python函数的积木。

其中,步骤s100包括:

检测到图形化python编程指令,进入图形化python编程界面;

获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式。

具体实施时,检测到用户输入的图形化python编程指令,进入图形化python编程界面,获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式具体为:

判断是否第一次进入图形化编程界面;

若是第一次进入图形化编程界面,则将积木编程模式作为当前python代码编辑模式;

若不是第一次进入图形化编程界面,则获取图形化python编程界面的上一次打开时的python代码编辑模式,将上一次的打开时的代码编辑模式作为当前python代码编辑模式。

在一些其他的实施例中,步骤s100具体为:

检测到图形化python编程指令,进入图形化python编程界面,图形化python编程指令包括python代码编辑模式;

根据图形化python编程指令获取python代码编辑模式。

具体实施时,若图形化python编程指令为积木编程模式,则当前显示界面为积木编程模式;若图形化python编程指令为文本代码编程模式,则当前显示界面为文本代码编程模式。

进一步地,系统还设置有切换模块,则步骤s200后包括:

切换模块检测到切换指令时,控制切换到文本代码编程模式。

具体实施时,当前客户端界面处于积木编程模式,则切换模块检测到切换指令时,切换到文本代码编程模式。若客户端界面处于文本代码编程模式,点击切换模块,则切换到积木编程模式。

进一步地,系统还设置有控制台和图形输出模块,则步骤s400包括:

检测到运行指令后,运行模块对编辑后积木对应的python代码进行执行;

判断执行后的输出结果为文字还是图形;

若输出结果为文字,则控制台输出python代码的文字运行结果;

若输出结果为图形,则图形输出模块输出图形化库的python代码的图形运行结果。

在另外一种实施例中,步骤s100之后还包括:

若python代码编辑模式为文本代码编程模式,则全屏显示文本代码编辑区;

根据文本代码编辑指令对python代码进行编辑,将编辑结果实时显示在文本代码编辑区。

具体实施时,在文本代码编程模式下,不再显示积木,从而方便编程者查看较多的文本代码,接收用户的文本代码编辑指令,编程python代码,并将编辑后的python代码显示在文本代码编辑区。

将编辑结果实时显示在文本代码编辑区后,还包括代码转换模块将当前编辑的文本代码转换为积木,并存储。当用户切换至积木编程模式后,积木编辑区显示的积木与文本代码编程区的代码同步展示。

本发明另一实施例提供一种电子设备,如图3所示,电子设备10包括:

一个或多个处理器110以及存储器120,图3中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图3中以通过总线连接为例。

处理器110用于完成电子设备10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp核、或任何其它这种配置。

存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的图形化python编程交互方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行电子设备10的各种功能应用以及数据处理,即实现上述方法实施例中的图形化python编程交互方法。

存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至电子设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的图形化python编程交互方法,例如,执行以上描述的图2中的方法步骤s100至步骤s400。

本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图2中的方法步骤s100至步骤s400。

本发明的另一种实施例提供了一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行上述方法实施例的图形化python编程交互方法。例如,执行以上描述的图2中的方法步骤s100至步骤s400。

以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行各个实施例或者实施例的某些部分的方法。

除了其他之外,诸如"能够'、"能"、"可能"或"可以"之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地不旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有学生输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。

已经在本文中在本说明书和附图中描述的内容包括能够提供图形化python编程交互方法、系统及电子设备的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1