楼主: 时光永痕
614 0

[数据挖掘新闻] 什么是Python?强大,直观的编程 [推广有奖]

  • 0关注
  • 14粉丝

svip3

学术权威

12%

(VIP/贵宾)三级

48%

威望
0
论坛币
26 个
通用积分
49.7576
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
34070 点
帖子
2731
精华
0
在线时间
316 小时
注册时间
2020-7-21
最后登录
2024-4-24

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
什么是Python?强大,直观的编程
为什么Python编程语言在数据科学,机器学习,系统自动化,Web和API开发等方面大放异彩
始于1991年的Python编程语言被认为是一种填补空白的方法,它是一种编写脚本的方法,该脚本可以“自动完成无聊的工作”(就像一本有关学习Python的流行书所言),或快速原型化将以其他语言实现的应用程序。
但是,在过去的几年中,Python已成为现代软件开发,基础结构管理和数据分析中的一等公民。它不再是一种后台实用程序语言,而是Web应用程序创建和系统管理中的主要力量,并且是大数据分析和机器智能爆炸式增长的主要驱动力。
Python的主要优势
Python的成功围绕着它为初学者和专家提供的几个优势。
Python易于学习和使用
语言本身的功能数量很少,只需很少的时间或精力即可制作您的第一个程序。Python语法被设计为可读性和直接性。这种简单性使Python成为理想的教学语言,并且它使新来的人可以快速使用它。结果,开发人员将更多的时间花在想解决的问题上,而将更多的时间花在思考语言复杂性或破译别人留下的代码上。
Python被广泛采用和支持
Python既流行又被广泛使用,因为在Tiobe Index等调查中排名很高,并且使用Python证明了大量GitHub项目。Python可在所有主要操作系统和平台上运行,大多数次要操作系统也可运行。许多主要的库和基于API的服务都具有Python绑定或包装器,从而使Python与这些服务自由接口或直接使用这些库。
Python不是“玩具”语言
尽管脚本编写和自动化涵盖了Python用例的很大一部分(稍后会详细介绍),但Python也可用于构建专业质量的软件,既可以作为独立的应用程序,也可以作为Web服务。 Python可能不是最快的语言,但是它缺乏速度,却弥补了通用性。
Python不断前进
Python语言的每个修订版都添加了有用的新功能,以与现代软件开发实践保持同步。例如,异步操作和协程现在已成为该语言的标准部分,从而使编写执行并发处理的Python应用程序变得更加容易。
Python用于什么
Python的最基本用例是作为脚本和自动化语言。Python不仅仅是Shell脚本或批处理文件的替代品;它还用于自动与Web浏览器或应用程序GUI进行交互,或在诸如Ansible和Salt的工具中进行系统配置和配置。但是脚本和自动化只是Python的冰山一角。
? ENERAL应用编程与Python
您可以使用Python创建命令行和跨平台GUI应用程序,并将它们部署为独立的可执行文件。Python不具备从脚本生成独立二进制文件的本机功能,但是可以使用cx_Freeze和 PyInstaller之类的第三方程序包来完成此任务。
使用Python进行数据科学和机器学习
复杂的数据分析已成为IT领域发展最快的领域之一,也是Python的明星案例之一。用于数据科学或机器学习的绝大多数库都具有Python接口,这使得该语言成为机器学习库和其他数值算法最流行的高级命令接口。
[InfoWorld的基本知识:Anaconda入门,Anaconda是数据科学的Python发行版。? Python的Anaconda发行版中的新增功能。? 5个用于数据科学的基本Python工具-现已改进。]
Python中的Web服务和RESTful API
Python的本机库和第三方Web框架提供了快速便捷的方法来创建一切,从几行代码中的简单REST API到成熟的数据驱动站点。Python的最新版本对异步操作提供了强大的支持,使站点可以使用正确的库每秒处理数万个请求。
Python中的元编程和代码生成
在Python中,语言中的所有内容都是一个对象,包括Python模块和库本身。这使Python可以用作高效的代码生成器,从而可以编写可操纵其自身功能并具有某种扩展性的应用程序,而这些扩展性在其他语言中很难或不可能实现。
Python还可以用于驱动代码生成系统,例如LLVM,以高效地创建其他语言的代码。
Python中的“胶水代码”
Python通常被描述为一种“胶水语言”,这意味着它可以使不同的代码(通常是具有C语言接口的库)进行互操作。就此而言,它在数据科学和机器学习中的使用,但这只是一般思想的一种体现。如果您有想要连接的应用程序或程序域,但无法直接相互通信,则可以使用Python进行连接。
Python不足之处
同样值得注意的是Python不适合执行的任务。
Python是一种高级语言,因此不适合用于系统级编程-设备驱动程序或OS内核已无法使用。
对于要求跨平台独立二进制文件的情况,它也不是理想的选择。您可以为Windows,MacOS和Linux构建一个独立的Python应用程序,但并不优雅或简单。
最后,当速度是应用程序各个方面的绝对优先事项时,Python并不是最佳选择。为此,最好使用C / C ++或同等水平的其他语言。
Python如何使编程变得简单
Python的语法是易读易懂的,几乎没有任何伪装。Python 3.x中的标准“ hello world”不过是:
打印(“世界您好!”)
Python提供了许多语法元素来简洁地表达许多常见的程序流。考虑一个示例程序,该程序用于将文本文件中的行读取到列表对象中,并在此过程中删除其终止换行符的每一行:
与开放( ' MYFILE 。TXT ')作为my_file :     file_lines = [ X 。rstrip ( ' \ n ')为X在my_file ]
该with/as构造是一个上下文管理器,它提供了一种有效的方法来实例化代码块的对象,然后将其处理到该代码块之外。在这种情况下,对象是my_file使用open() 函数实例化的。这代替了几行样板程序来打开文件,从文件中读取各行,然后将其关闭。
该[x … for x in my_file]建筑是另一个Python的特质,在列表理解。它允许my_file迭代包含其他项的项目(此处以及其中包含的行),并允许处理每个迭代元素(即each x)并自动附加到列表中。
您可以像使用for… 另一种语言一样用Python编写正式循环这样的东西。关键是,Python可以经济地表达诸如循环访问多个对象的循环之类的内容,并对循环中的每个元素执行简单的操作,或者处理需要显式实例化和处理的事物。
这样的构造使Python开发人员可以平衡简洁性和可读性。
Python的其他语言功能旨在补充常见的用例。大多数现代对象类型(例如Unicode字符串)直接内置于该语言中。数据结构,如列表,字典(即哈希图或键值存储),元组(用于存储对象的不可变集合)和集(用于存储唯一对象的集合),都可以作为标准问题项使用。
Python 2与Python 3
Python有两个版本,它们的差异足以吸引许多新用户。到2020年,Python 2.x(较旧的“旧版”分支)将继续受支持(即获得官方更新),此后它可能会非正式地持续存在。Python 3.x是该语言的当前和未来的化身,具有许多Python 2.x所没有的有用和重要的功能,例如新的语法功能(例如“ walrus运算符”),更好的并发控件等等。高效的口译员。
由于相对缺乏第三方库支持,Python 3的采用速度在最长的时间内减慢了。许多Python库仅支持Python 2,因此很难切换。但是在过去的几年中,仅支持Python 2的库数量有所减少。现在,所有最受欢迎的库都与Python 2和Python 3兼容。如今,Python 3是新项目的最佳选择。除非您别无选择,否则没有理由选择Python 2。如果您坚持使用Python 2,则可以使用各种策略。
Python的库
Python的成功取决于丰富的第一方和第三方软件生态系统。Python既受益于强大的标准库,又受益于从第三方开发人员那里获得的各种易于使用的库。数十年来的扩展和贡献丰富了Python。
Python的标准库提供了用于常见编程任务的模块-数学,字符串处理,文件和目录访问,联网,异步操作,线程,多进程管理等。但它也包含管理现代应用程序所需的常见高级编程任务的模块:读取和写入JSON和XML等结构化文件格式,处理压缩文件,使用Internet协议和数据格式(网页,URL,电子邮件)。暴露任何与C兼容的外部函数接口的任何外部代码,都可以使用Python的ctypes模块进行访问。
默认的Python发行版还通过Tkinter提供了一个基本但有用的跨平台GUI库,并提供了SQLite 3数据库的嵌入式副本。
可通过Python软件包索引(PyPI)获得的成千上万个第三方库构成了Python受欢迎程度和多功能性的最强展示。
例如:
该BeautifulSoup库提供的所有功能于一身的工具箱刮HTML,甚至刁钻,打破HTML和提取它的数据。
请求使处理HTTP请求变得轻而易举。
Flask和Django等框架允许快速开发包含简单和高级用例的Web服务。
可以使用Apache Libcloud通过Python的对象模型来管理多个云服务 。
NumPy,Pandas和Matplotlib加快了数学和统计运算的速度,并使创建数据可视化变得容易。
Python的妥协
像C#,Java和Go一样,Python具有垃圾回收的内存管理,这意味着程序员不必实现用于跟踪和释放对象的代码。通常,垃圾回收会在后台自动进行,但是,如果这样会带来性能问题,则可以 手动触发它或将其完全禁用,或者声明整个对象区域不受垃圾回收的影响,以提高性能。
Python的一个重要方面是它的动态性。语言中的所有内容(包括功能和模块本身)都作为对象处理。这是以牺牲速度为代价的(稍后会详细介绍),但是使编写高级代码变得容易得多。开发人员只需执行几条指令即可执行复杂的对象操作,甚至可以将应用程序的某些部分视为可以在需要时进行更改的抽象。
Python对有效空白的使用被认为是Python的最佳和最差属性之一。下面第二行的缩进不只是为了便于阅读;它是Python语法的一部分。Python解释器将拒绝不使用适当缩进来指示控制流的程序。
与开放( ' MYFILE 。TXT ')作为my_file :     file_lines = [ X 。rstrip ( ' \ n ')为X在my_file ]
语法空白可能会导致鼻子皱纹,因此某些人确实拒绝使用Python。但是即使在使用最少的代码编辑器的情况下,严格的缩进规则在实践中也远没有理论上的那么麻烦,其结果是使代码更清晰,更易读。
另一个潜在的障碍,尤其是对于那些来自C或Java语言的人,是Python如何处理变量类型。默认情况下,Python使用动态或“鸭子”类型-非常适合快速编码,但在大型代码库中可能会出现问题。也就是说,Python最近增加了对可选编译时类型提示的支持,因此可能会从静态类型中受益的项目可以使用它。

关注 CDA人工智能学院 ,回复“录播”获取更多人工智能精选直播视频!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python Hello World Matplotlib installer beautiful

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 15:43