Python 3 的优点

发布时间:2022-03-09 08:53:16 人气:47 作者:多测师

  为进一步提起你的胃口,以下是 Python 3 具备的一些优点。

  1.Print 不再是语句而是内置函数

  好处在于:

  确实没有理由让print作为一个语句存在,如果print是一个函数会更加统一。

  因为print是一个函数,因此可以将其作为参数传递给需要它的函数。以一个函数为例,它需要另一个函数进一步处理数据作为参数。为简单地对它实现模拟 / 调试,你现在可以直接传递一个print()函数。

  可以像这样用print:[print(x) for x in range(10)],因为现在它是一个函数。

  可以通过指定builtins.print来覆写print函数,而对于语句就不能这么做了。2.Unicode

  在 Python 3 中,每个字符串默认都是 Unicode 字符串。在 Python 2 中,字符串默认为 ASCII 字符串,这限制了它可以处理的字符范围。如果需要 Unicode 字符串,则必须这样创建:

  # Python 3 中不再需要unicode_sting = u'Ümlaut? Nō prōblem!'

  这在许多国家是必需的。

Python 3 的优点

  3. 数据类

  从 3.7 版本(相当新版本)开始,Python 提供数据类(data classes)。与常规类或其他替代方法相比,它有一些优点,例如返回多个值或字典:

  数据类(data classes)需要的代码量最少

  实现了__eq__,所以可以对比数据类(data classes)

  实现了__repr__,可以轻松打印出一个数据类

  数据类需要类型提示,能减少错误的发生以下是实践中数据类(data classes)的示例:

  from dataclasses import dataclass@dataclassclass Card: rank: str suit: strcard = Card("Q", "hearts")print(card == card)# Trueprint(card.rank)# 'Q'print(card)Card(rank='Q', suit='hearts')

  4. 合并字典

  从 Python 3.5 起,合并字典变得更容易:

  dict1 = { 'a': 1, 'b': 2 }dict2 = { 'b': 3, 'c': 4 }merged = { **dict1, **dict2 }print (merged)# {'a': 1, 'b': 3, 'c': 4}

  如果存在重叠的键,则第一个字典中的键将被覆盖。

  5. 除法变得更加可预见

  在 Python 2 中,除法运算符(/)默认为整数除法,除非操作数之一是浮点数。因此有以下行为:

  # Python 25 / 2 = 25 / 2.0 = 2.5

  在 Python 3 中,除法运算符默认为浮点除法,//运算符变为整数除法。这样我们会得到:

  Python 35 / 2 = 2.55 // 2 = 2

  6. 有意义的比较

  在 Python 2 中,可以对所有内容进行比较。以下示例将全部返回 True:

  print "a string" > 2print None < 5

  它没有意义,并且可能将错误隐藏。

  在 Python 3 中,这些比较将引发TypeError异常。

  7. 不再有 range vs. xrange

  Python 2 有两个range函数:range和xrange,后者更快,因为它的实现基于迭代器。

  在 Python 3 中,range已变为xrange,并且删除了xrange名称。在这个地方,Python 减少了学习者的困惑。

  以上内容为大家介绍了Python 3 的优点,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/

返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线