基于Python编程语言的技术应用

2021-04-20 02:36阚淑华
电子技术与软件工程 2021年1期
关键词:编程语言爬虫代码

阚淑华

(青岛第七中学 山东省青岛市 266001)

当前的初中生正是千禧一代,是我们所说的网络原住民,而教师大多都是网络移民,由于两者生活环境、生活方式、教育方式的不同,导致两者的思维方式也存在着一定程度的代沟和差异。在这个科技高速发展、思想多元包容的时代,青少年理应学习计算机信息技术,理应了解掌握计算机编程语言,只有这样,才能更好地与时代共发展,更好地面对未来的世界。

本文将对Python 编程语言作简单介绍,探究初中生所应该了解的基于Python 编程语言的技术应用。

1 Python编程语言的产生与发展

Python 编程语言最初是在二十世纪80-90年代由荷兰人Guido van Rossum 设计出来的这是带四代计算机编程语言。Guido van Rossum 在2005年加入谷歌之后仍然领导着Python 语言版本的更新与开发工作。

Python 在国内的发展起步较晚,最近几年才开始流行起来,但它在国外的应用可谓是相当广泛,很多搜索引擎和网站都是基于Python 语言完成的。Python 作为一种脚本语言,可以以极高的效率完成代码的开发,具备多种多样、强大实用的第三库工具,且语法易于理解,能够简单快速地进行编程,故而应用也相当广泛,不仅可以处理文字,还可以用于开发和设计Web 游戏。

2 Python编程语言的特点

Python 语言功能强大,具有语言简单、跨平台性、解释性、交互性、面向对象、强大的生态系统等特性。

Python 语言的简单体现在它的语法易于理解,且表达优美。例如,与C 语言或Java 等编程语言相比,使用Python 语言在屏幕上输出“hello world”这个经典的句子并不需要建立main 函数,可以直接敲入输出语句,实现字符串的输出显示:

>>>print“hello world!”

屏幕输出显示结果为:hello world!

Python 语言的简单还体现在它的代码缩进语法。代码缩进使得利用Python 语言所写的代码结构更加整齐,省略了其他语言中的花括号和分割代码,代码之间的层次是依靠冒号和代码缩进区分的。例如if 语句的写法是:

If True:

Print“Yes,it is true”

Python 语言的编写很高效,代码行数与其他编程语言相比来说较少,可以为程序员节省大量的工作量,提高编程效率,节省时间成本和人力成本。这种语言很适合作为编程学习的入门课程,其容易理解也容易上手,使用门槛较低,语法逻辑也很清晰完整,是一门特别实用的编程语言。

Python 语言是支持面向对象的,这种设计更加契合人类的思维方式。同时,Python 语言的开源使得程序可以直接在不同的平台上运行,而不需要考虑不同平台之间的差异性对程序进行修改。

Python 强大的生态系统为用户带来了极大的便利,能够满足用户的各种需求。专业开发者可以直接使用丰富多样的第三库工具达到开发目标,缩短了开发时间。

3 关于Python编程语言的基础知识

3.1 搭建平台和环境

Python 集成开发环境可以选择较低的安装版本,比如Python-3.5.3,但必须是Python-3.x 系列。安装低版本时要单独设置环境变量,具体方法是使用cmd 命令或者在计算机的高级系统设置中进行设置。安装好集成开发环境后,还可以安装PyCharm 或者全体辅助工具,这些辅助工具可以实现对代码进行调试和纠错等功能,从而提高编程的效率。

Python 具有很多的第三库工具,这些工具可以实现多种多样的功能,比如图像和视频处理、数据挖掘等。应用random 库中的随机数函数求解π,同时掌握蒙特卡洛方法。word cloud 库可以制作日常生活中常见的关键词云层,用来显示词语在文本中出现的频率,显示文本的主旨等。Matplotlib 二维绘制库可以生成高品质的图片,SciPy 可以实现数据的运算功能,第三库还可以编写自动批改选择题的程序。又例如应用Turtle 库绘制图形,Turtle 库又被称为海龟绘图库,是一种基础的Python 图形绘制函数库,其原理就是通过应用程序控制海龟的爬行,将其爬行轨迹生成图形。通过应用Turtle 库除了可以学习基础的图形绘制以外,初学者还能够掌握Python 编程的应用能力和程序设计结构能力,可谓是一举多得。每个工具都具备不同的功能,第三库工具的学习和使用可以激发编程者的创意,凸显个人的创新和特点。

第三库的安装一般会使用pip 工具和cmd 命令进行安装,也就是以管理者的身份通过pip install 进行安装,当然也可以自定义安装和文件安装。

3.2 了解计算机的硬件结构

软件功能的实现离不开硬件的支持,代码的输送也是以硬件为基础的。学习计算机的硬件,内容包括了CPU 的组成、输入输出系统、计算机工作原理等。先了解了计算机的硬件结构,才能更好地理解计算机语言的语法逻辑。

3.3 Python和操作系统

操作系统是计算机系统软件的重要组成部分,能够与外界进行通信。Python 的解释器程序可以将编写好的程序进行翻译,转换为二进制的字节码,也就是将人类的语法逻辑转变为机器的语法逻辑,方便机器进行处理。Python 的虚拟机程序组件又可以将转换后的字节码存放到操作系统中以备后续调用,软件通过代码的指示与操作系统进行沟通,以执行某种功能。

3.4 Python返回结果的两种表现方式

Python 返回结果的表现方式第一种是通过函数实现。例如求字符串中元音字母的个数值可以这样编写:

VowelCount(“What is it?”)

Returns 3(one a and two t’s)

第二种表现方式是通过图形化表达实现。例如使用饼状图表示元音字母在全图中的比例,这种表达方式更加直观易读。

4 基于Python编程语言的技术应用

4.1 Python编程语言应用于数据科学领域

Python 应用于数据分析主要是如何利用Python 语言读取各种文件,如何制作各种图表,如何实现数据库的链接,如何进行统计分析,如何建模,以及各种Python 包的使用方法。

Python 语言的标准库可以应用于大数据的处理,这其中的处理逻辑是:将数据转换为与Python 相适应的数据结构,然后采用适合的Python 工具分析数据,最后得出数据的特征并用合适的结构形式表现出来。例如,采用Python 语言开发数据采集软件,这种软件免安装,可以设置采样频率,后台还能够自动保存数据,简化了操作步骤,使得数据的采集分析更加灵活。

Python 还可以用于解决微分方程、矩阵解析、概率分布等数学问题。

Python 语言在数据科学领域的应用是它的核心竞争优势,其在这一领域的应用前景是很乐观的。

Python 在数据分析领域的典型应用案例是基于Python 语言的校园一卡通消费信息处理。使用Python 对校园一卡通的消费信息进行分析和处理,并通过可视化技术生成图像,从而直观地了解学生的消费水平、消费习惯等信息,为学校的管理决策提供参考。以往大家常用Excel 图表来反映数值意义,Excel 图表的制作简单,但这种方法并不适用于海量数据的处理,于是,Python 语言的优势就凸显了出来。利用Python 语言分析某校校园卡每笔消费的额度,可以得到图1。

通过观察图1,可以发现,每笔消费额度在2 元和6 元处达到了峰值,可以得出以下结论:商店2 元和6 元的商品销量最好,这样商店就掌握了学生的消费行为,从而制定合理的进货清单。

图1:某校校园卡每笔消费额度情况

4.2 基于Python编程语言的Web应用和网页游戏设计

Python 可以实现Java 的所有功能,Web 应用和网页游戏的设计更倾向于使用Python。利用Python 建立的豆瓣网、YouTube是Python 之Web 应用的经典例子。使用Python 进行Web 开发大多是基于WSGI 这一传统的线程模型。WSGI 传统模式是存在于Python web server、application、middleware 之间的官方规范标准。但WSGI 这种模式存在着两大局限。第一是其不支持异步,第二是不支持Python3.x。

目前越来越多的网页游戏的设计都使用Python 编程语言,改变了以往使用CC++语言设计服务端的传统。在以往的游戏设计中,采用C++编写host,同时调用多个LUA 脚本语言完成一个项目的业务逻辑,而现在,Python 自身就可以做到这些。

4.3 基于Python编程语言的云技术

云技术的很多底层的虚拟化都使用Python 语言实现。把资源以服务的方式提供给客户是云计算的核心思想,IaaS、SaaS、PaaS这些云计算平台都可以实现这一核心思想。而这些平台的开放协议栈OpenStack 都是采用Python 开发的。例如易度的PaaS 就是利用现有的开源技术,基于Python 语言建立的。又例如百度云也采用了Python 语言,谷歌搜索引擎的云计算服务更是仅支持Python 这一种语言。

4.4 基于Python的网络爬虫技术

大数据时代网络资源多种多样,海量信息应有尽有,基于Python 的网络爬虫技术可以在互联网的海量资源中挖掘出有用信息,缓解大数据时代的信息焦虑。这种技术以用户需求为搜索目标,分析网页代码的class 属性,利用第三库工具requests 和beautiful soup4 中的相关函数获取并下载有用信息。例如网络图片爬虫技术,这种技术主要是搜集网络上的图片信息,对制定指定网站上的所有图片中的信息进行自动提取,然后下载到本地进行保存。所谓爬虫,是一段程序,可以自动抓取网络信息,通过程序模拟浏览器,然后向站点发送请求,对站点反馈的信息进行分析,提取出所要的图片信息,下载到本地储存起来,用于后续的数据分析。网络图片爬虫技术的基本工作流程如图2所示。

图2:网络图片爬虫技术的基本工作流程

4.5 基于Python和ArcPy的专题图批量制作

ArcPy 是软件开发引擎ArcGIS Engine 自带的Python 站点包,它可以降低ArcGIS 二次开发的难度和门槛,能够提供接口、函数和类,主要用于地理数据的查询和处理。ArcPy 所包括的制图模块能够提供用于自动化制图的函数和类,可以用来批量制作专题图。以湖泊环境因子空间分布专题图的制作为例,批量制作湖泊环境因子空间分布专题图技术路线如图3所示。

图3:批量制作湖泊环境因子空间分布专题图技术路线

基于Python 和ArcPy 的专题图批量制作方法实现了专题图制作的自动化,提高了制作效率,将来可能广泛应用于数据框架分析工作当中。

5 总结

Python 的应用领域非常广泛,越来越受到国内外软件技术人员的欢迎和青睐,国内的许多高校也开设了Python 编程语言课程。但Python 在国内的推广和普及仍有较长的道路要走,如何将这种优秀的编程语言更好地应用于人工智能、机器学习、数据科学、金融、运维等领域是学界应该关注的重要课题。

猜你喜欢
编程语言爬虫代码
利用网络爬虫技术验证房地产灰犀牛之说
压力-体积转换在CFC编程语言中的实现解析
基于Python的网络爬虫和反爬虫技术研究
Java编程语言的特点与应用
创世代码
创世代码
创世代码
创世代码
利用爬虫技术的Geo-Gnutel la VANET流量采集
浅谈不同编程语言对计算机软件开发的影响