当前位置:首页 > 科技  > 软件

赶紧试试 Python 3.12 吧,真的好用

来源: 责编: 时间:2024-06-19 15:36:45 64观看
导读Python 3.12 引入了一些新的特性和改进,提升了开发体验和代码性能。以下是其中一些值得注意的新函数和改进:1. str.removeprefix() and str.removesuffix()虽然这些函数在 Python 3.9 就已引入,但它们在 Python 3.12 中

Python 3.12 引入了一些新的特性和改进,提升了开发体验和代码性能。以下是其中一些值得注意的新函数和改进:RjY28资讯网——每日最新资讯28at.com

RjY28资讯网——每日最新资讯28at.com

1. str.removeprefix() and str.removesuffix()

虽然这些函数在 Python 3.9 就已引入,但它们在 Python 3.12 中变得更加广泛使用。RjY28资讯网——每日最新资讯28at.com

  • **str.removeprefix(prefix)**:如果字符串以指定的前缀开头,则返回去掉该前缀的字符串。
  • **str.removesuffix(suffix)**:如果字符串以指定的后缀结尾,则返回去掉该后缀的字符串。
s = "HelloWorld"print(s.removeprefix("Hello"))  # 输出: Worldprint(s.removesuffix("World"))  # 输出: Hello

2. math.nextafter(x, y)

返回从 x 开始,到 y 方向的下一个浮点数。这个函数对需要精确控制浮点数计算的场景非常有用。RjY28资讯网——每日最新资讯28at.com

import mathprint(math.nextafter(1.0, 2.0))  # 输出: 1.0000000000000002print(math.nextafter(1.0, 0.0))  # 输出: 0.9999999999999999

3. sys.orig_argv

这个属性允许你访问原始的命令行参数列表,包括解释器自身的参数,而不仅仅是脚本和传递给脚本的参数。RjY28资讯网——每日最新资讯28at.com

import sysprint(sys.orig_argv)

4. functools.cache_clear()

在 Python 3.12 中,functools.cache_clear() 方法被添加到 functools.lru_cache 修饰器中,用于清除缓存。RjY28资讯网——每日最新资讯28at.com

from functools import lru_cache@lru_cache(maxsize=32)def fibonacci(n):    if n < 2:        return n    return fibonacci(n-1) + fibonacci(n-2)# 清除缓存fibonacci.cache_clear()

5. 新的 typing 模块改进

Python 3.12 对 typing 模块进行了多项改进,包括更好的类型推断和新的类型提示功能。例如,可以使用 Self 类型提示方法的返回类型为类实例本身。RjY28资讯网——每日最新资讯28at.com

from typing import Selfclass MyClass:    def my_method(self) -> Self:        return self

6. contextlib.aclosing

类似于 contextlib.closing 但用于异步生成器对象。RjY28资讯网——每日最新资讯28at.com

import contextlibclass AsyncGenerator:    async def __aenter__(self):        print("Entering")        return self    async def __aexit__(self, exc_type, exc, tb):        print("Exiting")    async def __aiter__(self):        for i in range(5):            yield iasync def main():    async with contextlib.aclosing(AsyncGenerator()) as agen:        async for item in agen:            print(item)# 运行异步主函数import asyncioasyncio.run(main())

7. itertools.pairwise()

产生一对连续元素的迭代器。RjY28资讯网——每日最新资讯28at.com

import itertoolsfor pair in itertools.pairwise([1, 2, 3, 4]):    print(pair)# 输出: (1, 2), (2, 3), (3, 4)

8. zoneinfo 模块改进

对时区信息进行了增强,更好地支持时间相关操作。RjY28资讯网——每日最新资讯28at.com

from zoneinfo import ZoneInfofrom datetime import datetimedt = datetime(2024, 6, 14, tzinfo=ZoneInfo("America/New_York"))print(dt)

这些新特性和改进使得 Python 3.12 更加强大和易用,为开发者提供了更多工具来编写高效、可维护的代码。建议大家尽早升级并尝试这些新特性。RjY28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-94851-0.html赶紧试试 Python 3.12 吧,真的好用

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 消灭代码中的 if :请求参数校验的优雅之道

下一篇: 十分钟了解 Golang 泛型

标签:
  • 热门焦点
  • 微信语音大揭秘:为什么禁止转发?

    微信语音大揭秘:为什么禁止转发?

    大家好,我是你们的小米。今天,我要和大家聊一个有趣的话题:为什么微信语音不可以转发?这是一个我们经常在日常使用中遇到的问题,也是一个让很多人好奇的问题。让我们一起来揭开这
  • 在线图片编辑器,支持PSD解析、AI抠图等

    在线图片编辑器,支持PSD解析、AI抠图等

    自从我上次分享一个人开发仿造稿定设计的图片编辑器到现在,不知不觉已过去一年时间了,期间我经历了裁员失业、面试找工作碰壁,寒冬下一直没有很好地履行计划.....这些就放在日
  • 使用LLM插件从命令行访问Llama 2

    使用LLM插件从命令行访问Llama 2

    最近的一个大新闻是Meta AI推出了新的开源授权的大型语言模型Llama 2。这是一项非常重要的进展:Llama 2可免费用于研究和商业用途。(几小时前,swyy发现它已从LLaMA 2更名为Lla
  • 虚拟键盘 API 的妙用

    虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • Temu起诉SHEIN,跨境电商战事升级

    Temu起诉SHEIN,跨境电商战事升级

    来源 | 伯虎财经(bohuFN)作者 | 陈平安日前据外媒报道,拼多多旗下跨境电商平台Temu正对竞争对手SHEIN提起新诉讼,诉状称Shein&ldquo;利用市场支配力量强迫服装厂商与之签订独家
  • 网红炒股不为了赚钱,那就是耍流氓!

    网红炒股不为了赚钱,那就是耍流氓!

    来源:首席商业评论6月26日高调宣布入市,网络名嘴大v胡锡进居然进军了股市。在一次财经媒体峰会上,几个财经圈媒体大佬就&ldquo;胡锡进炒股是否知道认真报道&rdquo;展开讨论。有
  • 四年持续更迭坚持探索行业无人之境,HarmonyOS 4带来五大升级多项创新

    四年持续更迭坚持探索行业无人之境,HarmonyOS 4带来五大升级多项创新

    除了华为每年新发布的旗舰手机系列,上亿花粉更加期待鸿蒙系统每次的跨版本大更新。8月4日,HarmonyOS 4于HDC 2023正式发布,这也是该系统历经四年的再
  • 华为发布HarmonyOS 4:更好玩、更流畅、更安全

    华为发布HarmonyOS 4:更好玩、更流畅、更安全

    在8月4日的华为开发者大会2023(HDC.Together)大会上,HarmonyOS 4正式发布。自2019年发布以来,HarmonyOS一直以用户为中心,经历四年多的发展HarmonyOS已
  • OPPO K11搭载高性能石墨散热系统:旗舰同款 性能凉爽释放

    OPPO K11搭载高性能石墨散热系统:旗舰同款 性能凉爽释放

    日前OPPO官方宣布,将于7月25日14:30举办新品发布会,届时全新的OPPO K11将正式与大家见面,将主打旗舰影像,和同档位竞品相比,其最大的卖点就是将配备索尼
Top
Baidu
map