iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >惊艳!Python3 的这几个特性
  • 129
分享到

惊艳!Python3 的这几个特性

这几个惊艳特性 2023-01-31 02:01:04 129人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

距离官方放弃python2的时间越来越近,很多项目也逐渐的开始放弃对Python2的支持,比如Django,IPython这些框架就走在了最前列,Python2完成了它的使命,在人工智能的新时代,Python2带来的问题不断地困扰开发者,

距离官方放弃python2的时间越来越近,很多项目也逐渐的开始放弃对Python2的支持,比如Django,IPython这些框架就走在了最前列,Python2完成了它的使命,在人工智能的新时代,Python2带来的问题不断地困扰开发者,比如字符编码问题、性能问题、代码维护问题等等。

python3 才是未来真正适合移动互联网、人工智能的一门语言。发现很多很多小伙伴依然停留在Python2的脚步,一部分原因来自于老旧系统带来的迁移成本,还有另一部分原因则是缺乏相关的资料。专门介绍Python3的文章还比较少,所以小编想根据自己的工作经验盘点Python3给我带来的好处。

1. 明确区分字符和字节类型

没遇到过Python编码问题都不能称之为真正的Python程序员,但凡是在中文环境下使用Python或多或少都遇到过字符编码的问题,最常见的错误就是UnicodeEncodeError,UnicodeDecodeError 这样的错误。出现这种错误的根本原因在于Python2积攒下来的历史包袱,默认使用ASCII作为编码格式,字符串和字节类型界限模糊,字符串又分为str和unicode类型,有时一个字符串既是str类型,又可以是byte类型,混乱至极。所以在Python3彻底解决的这种情况,首先Python3使用utf-8作为默认编码,这样就兼容了所有字符,无论是中文、日文、韩文还是火星文都可以表示了,此外,str和byte两种类型做了明确的区分,因此,使用Python3可解决99%的编码错误问题。

2. 取消老式类

Python2 为了兼容之前的版本,Python中的类还分为新式类和旧式类,旧式类由于早期的设计缺陷导致功能不完善,于是推出了新式类,这样一来,在python2中就一直存在新旧两种形式的类,而在Python3就彻底把旧式类抛弃掉了。这也很多程度上减少了开发者每次创建一个对象还是显式的指定object作为父类的情景。

3. 类型声明

我们都知道Python是一门动态语言,动态语言的一大特点就是定义变量的时候不需要指定数据类型,变量本省是没有类型整个说法的,真正的类型是由对象才有,正因为如此,这个特性给开发者带来灵活和便利性,与此同时,有利也有弊,任何变量在运行期你是无法确定变量的类型的,程序不得不在运行时才能确定类型,这样就会造成一个问题,如果你是api的调用者,当API的提供方没有提供详细的文档说明或者代码注释的时候,你根本就无法利用他们给你提供的服务,而且,项目规模变大之后,没有类型声明的代码对维护也是一大挑战,因为,Python3考虑到这种情况,新增了类型声明,在方法定义或者数据的返回值,都可以指定一个数据类型,明确要求调用者必须使用指定的类型才能调用该方法。

4. 异步

Python虽然提高的开发的效率,但是带来的代价就是程序性能上的损耗,因为它是一种解释型语言,速度上自然比不上静态语言,与此同时,Python天生的GIL语言,并不能充分利用多核CPU,使得程序可以并行执行。所以,多线程面对计算密集型场景成了鸡肋。为了解决这一问题,Python引入了 ascync ,开始原生支持异步操作,这使得在单线程情况下,也能充分利用系统资源,提高程序性能。

--结束END--

本文标题: 惊艳!Python3 的这几个特性

本文链接: http://www.lsjlt.com/news/185332.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 惊艳!Python3 的这几个特性
    距离官方放弃Python2的时间越来越近,很多项目也逐渐的开始放弃对Python2的支持,比如Django,IPython这些框架就走在了最前列,Python2完成了它的使命,在人工智能的新时代,Python2带来的问题不断地困扰开发者,...
    99+
    2023-01-31
    这几个 惊艳 特性
  • 十个惊艳的Pythonic单行代码
    目录1.交换两个变量2.多变量赋值3. 对列表的每个第二个元素求和4.删除多个元素5. 将文件读入行数组6. 将字符串写入文件7. 列表创建8.列表映射9. 创建集合10.回文检查自...
    99+
    2022-12-08
    Pythonic单行代码 Pythonic 代码
  • 2017年30个惊艳的Python开源项
    【摘要】本文来自Mybridge,介绍了过去一年里30个惊艳的Python开源项目。点击阅读原文每一个都可以在GitHub上看到更为详细的内容。以下是译文。在过去的一年里,Mybridge AI 比较了近15000个开源Python项目...
    99+
    2023-01-31
    开源 惊艳 Python
  • Python3的这些新特性很方便
    概述   随着Python在机器学习和数据科学领域的应用越来越广泛,相关的Python库也增长的非常快。但是Python本身存在一个非常要命的问题,就是Python2和Python3,两个版本互不兼容,而且Github上Pytho...
    99+
    2023-01-31
    很方便 新特性
  • 微软Win11什么功能最惊艳? Windows11新功能特性汇总
    最近,网络上关于Windows 11操作系统的消息满天飞,与此同时,有外国网友已经拿到了泄露版的Windows 11系统并进行了体验,那么体验结果如何?从试用结果来看,应该就是微软打算在当地时间 6 月 24 日,也就是...
    99+
    2023-05-23
    Win11 Windows11 Win11功能汇总
  • 7个令人惊讶的JavaScript特性详解
    目录从任何一个代码块中 break解构一个已存在的变量对数值进行解构类声明是块级作用域的同名参数typeof 不安全新数组从任何一个代码块中 break 你应该已经知道你可以从任意循...
    99+
    2023-05-20
    7个JavaScript特性 JavaScript特性
  • 13 个 python3 才能用的特性
    分享来源13 个 python3 才能用的特性 python3 于 2008 年发布,从最初的大割裂到现在,绝大多数的开源库已经使用 python3 来编写,并且已经迭代了五个大版本,最新的 python3.7 计划于 2018 年 6 ...
    99+
    2023-01-31
    能用 特性
  • 你应该使用Python3里的这些新特性
    概述 由于Python2的官方维护期即将结束,越来越多的Python项目从Python2切换到了Python3。可是,在实际的工作中,我发现好多人都是在用Python2的思维去写Python3的代码,Python3给我们提供了很多新的、很...
    99+
    2023-01-31
    你应该 新特性
  • Win10 21H2太阳谷版本真的这么惊艳吗? Win1021H2上手试玩
    前段时间,极客之选介绍了 Win10 发布 7 年来 12 个大版本的变化,在这 7 年里,虽然功能增加了不少,但「感知」似乎并不强烈,毕竟 UI 设计才是一款操作系统最直观的水平体现,而与常用常新的手机系统和 MACO...
    99+
    2023-05-23
    Win10 Win1021H2
  • 如何写出一个惊艳面试官的JavaScript深拷贝
    目录导读深拷贝和浅拷贝的定义乞丐版基础版本考虑数组循环引用性能优化其他数据类型合理的判断引用类型获取数据类型可继续遍历的类型不可继续遍历的类型克隆函数最后参考小结导读 最近经常看到很...
    99+
    2024-04-02
  • 标签格式化大师:用 HTML 编写惊艳文本的 20 个技巧
    ...
    99+
    2024-04-02
  • python3函数的高级特性有哪些
    本篇文章给大家分享的是有关python3函数的高级特性有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python有哪些常用库python常用的库:1.requesuts;...
    99+
    2023-06-14
  • python3中函数的高级特性有哪些
    python3中函数的高级特性有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学...
    99+
    2023-06-14
  • WEBJX整理几条Windows 8系统的新特性的特点
    SmartScreen   Windows 8将内置Internet Explorer 9的SmartScreen功能,并且可以在‘文件夹选项’中启用。   IE中的SmartScreen功能用于...
    99+
    2023-05-25
    Windows8 WEBJX 特性 Windows 8系统 特点
  • python3正则表达式的几个高级用法
    一、 概述 本文举例说明python3正则表达式的一些高级级法,主要是各类分组,可应用于 1、复杂网页文件中的有用数据 例如,采用爬虫技术取得网页后,对网页内任何数据进...
    99+
    2023-01-31
    几个 高级 正则表达式
  • C#10的13个特性
    常量的内插字符串 C# 10 允许使用在常量字符串初始化中使用插值, 如下 const string name = "Oleg"; const string greeting ...
    99+
    2024-04-02
  • C++中的几个特殊符号说明
    目录C++的几个特殊符号C++的“>>“和“<<“操作符作用位操作符C++的几个特殊符号 # 把宏参数变为一个字符串,仅可用于宏定义中...
    99+
    2024-04-02
  • 这15个相见恨晚的Linux神器,看看你见过几个?
    ag:比grep、ack更快的递归搜索文件内容。...
    99+
    2023-06-02
  • CSS常用的几个属性介绍
    这篇文章主要讲解了“CSS常用的几个属性介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS常用的几个属性介绍”吧!5个实用的CSS属性这篇文章介绍了5...
    99+
    2024-04-02
  • CSS的三个特性是什么
    这篇文章给大家分享的是有关CSS的三个特性是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 层叠(cascade)、继承(Inheritance)、特异性(Specific...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作