庆云古诗词

庆云古诗词

python rust 2019python命名规则

互联资讯 0

淘宝搜:【红包到手500】领超级红包,京东搜:【红包到手500】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】

python怎么读,python能做什么,python什么东西,python123

△点击上方“Python猫”关注 ,回复“1”领取电子书

这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明。(本期标题取自其中一则分享,不代表全部内容都是该主题,特此声明。)

文章&教程

1、Python修饰器的函数式编程[1]

介绍了装饰器的实现原理、带参装饰器、多装饰器、类装饰器和几个典型的示例。文章发布于 2014 年,代码用的还是 Python 2。之所以分享这篇文章,因为它是左耳朵耗子[2]唯一以 Python 为话题的文章,而且写得详细到位。

2、asyncio 的一些高级用法[3]

出自我们的老朋友@古明地觉的新系列《asyncio 系列》,半个月内已连载 14 篇。真想问问他是如何做到如此高产又高质量的?!文章回答了:如何设计既能接收协程又能接收普通 Python 函数的 API,如何强制事件循环的迭代,如何在不传递参数的情况下在任务之间传递状态……

3、Nginx+uWSGI 部署 Django 以及负载均衡操作[4]

介绍了 uWSGI 和 Nginx 的配置,实现对 Django 服务的反向代理及负载均衡。该文出自仍在连载的《Django 系列》,目前该系列包含 44 篇文章,能作为系统学习 Django 的参考材料。

4、Rye:一个实验性质的Python包管理系统[5]

Python 目前的包管理工具多得让人眼花缭乱,而 Conda 和操作系统的包管理器也存在诸多问题(本周刊第一期就有两则相关内容)。Flask 作者 Armin Ronacher 用 Rust 开发的 rye,借鉴了 Rust 包管理的经验,试图提供一个标准化的解决方案。这篇文章介绍了 rye 的安装及使用。

5、PyInstaller:将你的Python代码打包成独立应用程序[6]

PyInstaller 可将 Python 程序打包为一个可执行文件,支持多个平台如 Windows、Mac 和 Linux。这是一篇简单清晰的使用教程,除了基础介绍外,难得的是它还介绍了两种打包方式的优缺点,以及打包后常见的 5 个问题。

6、如何在 Python 中实现真正的多线程[7](英文)

Python 3.12 即将推出“Per-Interpreter GIL(PEP-684)”特性,它允许 Python 实现真正的并行处理。代码虽然已在 alpha 版本中,但目前只能通过 C-API 使用。文章使用 CPython 的模块演示了子解释器的示例。

7、GIL vs. nogil: 改动一行代码,提升十倍 I/O 性能[8](英文)

nogil 项目[9]是另一个试图实现真正多线程的方案,这篇文章测试发现 CPython 3.9-nogil 在单文件和多文件的情况下,比未修改的 CPython 3.9 分别快 2.5 倍和 10 倍。nogil 项目最新的进展是形成了正式的 PEP-703,相关介绍在此[10]。

8、如何在 PyCharm 中创建一个密码生成器?[11](英文)

PyCharm 官方推出的文章教程,指导在 PyCharm 中创建项目、导入包、使用 Typer 库创建 CLI 应用、运行和调试代码、创建和编辑运行配置,适合于新人学习练手。另外,PyCharm 2023.1.2[12] 版本刚刚发布,可以去尝鲜!

9、Python 元类教程(带示例)[13](英文)

在 Python 中,一切都是对象,包括。元类是 Python 的一项强大功能,允许你在运行时动态地创建类(实际是创建一个类型的对象)。文章探讨元类的基础知识,以及更高级的功能和示例。

10、当在终端输入“ls”后会发生什么?[14](英文)

有一道很常见的面试题:“当在浏览器输入 【【网址】】 后会发生什么?”由于见得多了,每个人都能回答个一二,但是,经常跟终端打交道的我们,能否回答这个问题呢:当在终端输入命令后会发生什么?文章主要介绍了终端的历史、启动过程、命令的解析和执行过程。

项目&资源

1、WingetUI:更好用的包管理器 UI[15](英文)

该项目的目标是为 Win 10-11 中最常见的 CLI 包管理器(如 Winget、Scoop 和 Chocolatey)创建一个直观的 GUI。已支持软件包的安装、更新和卸载、排队安装、消息通知、黑暗模式、导入/导出等功能。

2、pandas-ai:支持 AI 功能的 Pandas[16](英文)

Pandas 无疑是目前最流行的数据分析和处理工具,当它结合了生成式 AI 的能力后,会不会更好用呢?答案似乎是的!pandasai 项目支持用文字的方式操作 Pandas 的数据对象,可简化很多 Pandas 库的操作。

3、promptulate:一个强大的 LLM Prompt Layer 框架[17]

一个专为 Prompt Engineer 设计的 LLM Prompt Layer 框架,支持连续对话、角色预设、对话存储、工具扩展等功能,可以无需代理直接访问,开箱即用。通过 promptulate,你可以轻松构建起属于自己的 GPT 应用程序。

4、MicroPython:面向微控制器和嵌入式系统的 Python[18](英文)

MicroPython 新发布了 1.20 版本,引入了一个新的轻量级包管理器,减小了代码大小,并增加了对许多新板的支持。另外,LWN 的这篇文章[19]对此版本做了介绍,文章还提到 Anaconda 有可能在 Q2 将 【【微信】】 的运行时从 Pyodide 替换为 MicroPython。

5、【【微信】】:以数据库为基础的 GPT 实验项目[20]

使用本地化的 GPT 大模型与你的数据和环境交互,无数据泄露风险,100% 私密,100% 安全。基于 FastChat 构建大模型运行环境,并提供 vicuna 作为基础的大语言模型,通过 LangChain 提供私域知识库问答能力,支持插件模式,在设计上原生支持 Auto-GPT 插件。

播客&视频

1、Ep 40. Rust 和 PyO3:让 Python 再次伟大[21]

断更许久的《捕蛇者说》播客回归了!本期的嘉宾是 PyO3 项目的维护者,他的另一个身份是 wechatpy 的作者。Rust 和 PyO3 项目能放大 Python 的优势,并能改造 Python 的应用生态。我们曾推荐过性能最快的代码分析工具 Ruff[22],另外 Flask 作者新开发的包管理工具 rye[23],它们都是 Rust 与 Python 结合的产物。(题外话:看到了捕蛇者说的三位主播发推/发博缅怀左耳朵耗子,想不到他对 Python 圈子有这么多渊源。R.I.P)

2、Talk Python to Me #415: Future of Pydantic and FastAPI[24](英文)

Pydantic 2.0 使用 Rust 重写了核心及顶层的代码,将对构建在其之上的库产生积极的影响,比如 FastAPI。播客邀请了 Pydantic 的 Samuel Colvin 以及 FastAPI 的 Sebastián Ramírez 一起采访,话题度很新!

3、再访《流畅的 Python》作者 Luciano Ramalho[25](英文)

我在上个月推荐过新上市的《流畅的 Python》中文第二版(链接[26]),这里补充两则相关材料。这期播客来自 thoughtworks,是在《Fluent Python》英文第二版上市前的访谈,介绍了关于 Python 发展、不同语言的对比、新书的变化等。另外,他们还在 2020 年新书写作期间录了一期“The future of Python”[27],两期播客都有完整的文字稿。

4、最常用的七种分布式系统模式[28](英文)

一则简短的科普视频,介绍了七种分布式系统模式:Ambassador、Circuit Breaker、CQRS、【【微信】】、Leader Election、Publisher/Subscriber、Sharding。视频中的动画和图例都非常直观和舒适,让人赏心悦目。

问题&讨论

1、作为程序员,有什么提升生活/工作体验的 App、硬件、服务?[29]

V2ex 上的一个帖子,大家对这样的话题似乎很有发言欲。我在此最想推荐的 APP 是 Feedly 和 Substack,用于阅读 RSS 和 Newsletter。Feedly 对本周刊的素材采集帮助极大!(心愿:依靠读者的打赏,让我用上 Feedly Pro+ 的 AI 功能!)

2、rye 应该存在么?[30](英文)

前文已提到过 rye,那么,mitsuhiko 是出于什么考虑而开发了它呢?它想解决什么样的问题,想打造出一款什么样的工具呢?Python 官方对包管理会有什么发展支持呢?Github 上的这个问题引起了广泛的讨论。

3、你是怎样开始程序员职业生涯的?[31]

V2ex 上的帖子,楼主分享了自己从读书到就业前几年的故事,评论区有不少人分享了自己的经历。你是如何开始自己的程序员之路的呢?

赞助&支持

内容创作不易,如果你觉得有帮助,请随意赞赏[32]、买杯咖啡[33]或在爱发电[34]进行支持!

另诚邀广告主,欢迎通过私信联系。

关于周刊

Python 潮流周刊,精心筛选国内外的 200+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。

订阅方式:Python猫[35] | RSS[36] | 邮件[37] | Github[38]

参考资料

Python修饰器的函数式编程: http://coolshell.cn/articles/11265.html

[2]

左耳朵耗子: https://coolshell.cn/haoel

[3]

asyncio 的一些高级用法: https://www.cnblogs.com/traditional/p/17403428.html

Nginx+uWSGI 部署 Django 以及负载均衡操作: https://segmentfault.com/a/1190000043790186

[5]

Rye:一个实验性质的Python包管理系统: http://vra.github.io/2023/05/17/rye-intro/

[6]

PyInstaller:将你的Python代码打包成独立应用程序: https://juejin.cn/post/7232571353123487802

[7]

如何在 Python 中实现真正的多线程: https://martinheinz.dev/blog/97

[8]

GIL vs. nogil: 改动一行代码,提升十倍 I/O 性能: https://www.backblaze.com/blog/python-gil-【【微信】】erformance-10x-with-one-line-change/

[9]

nogil 项目: https://pythoncat.top/posts/2021-11-14-GIL

[10]

在此: https://pythoncat.top/posts/2023-02-20-GIL

[11]

如何在 PyCharm 中创建一个密码生成器?: https://blog.jetbrains.com/pycharm/2023/05/create-passphrase-generator-in-pycharm/

[12]

PyCharm 2023.1.2: https://blog.jetbrains.com/pycharm/2023/05/pycharm-2023-1-2-is-out

[13]

Python 元类教程(带示例): https://coderslegacy.com/python-metaclass-tutorial/

[14]

当在终端输入“ls”后会发生什么?: https://www.warp.dev/blog/【【微信】】pen-a-terminal-and-enter-ls

[15]

WingetUI:更好用的包管理器 UI: https://github.com/marticliment/WingetUI

[16]

pandas-ai:支持 AI 功能的 Pandas: https://github.com/g【【微信】】/pandas-ai

[17]

promptulate:一个强大的 LLM Prompt Layer 框架: https://github.com/Undertone0809/promptulate

[18]

MicroPython:面向微控制器和嵌入式系统的 Python: https://github.com/micropython/micropython/releases/tag/v1.20.0

[19]

这篇文章: https://lwn.net/Articles/931051

[20]

【【微信】】:以数据库为基础的 GPT 实验项目: https://github.com/csunny/【【微信】】

[21]

Ep 40. Rust 和 PyO3:让 Python 再次伟大: https://pythonhunter.org/episodes/ep40

[22]

Ruff: https://pythoncat.top/posts/2023-04-09-ruff

[23]

rye: https://github.com/mitsuhiko/rye

[24]

Talk Python to Me #415: Future of Pydantic and FastAPI: https://talkpython.fm/episodes/show/415/future-of-pydantic-and-fastapi

[25]

再访《流畅的 Python》作者 Luciano Ramalho: https://www.thoughtworks.com/insights/podcasts/technology-podcasts/fluent-python-re【【微信】】

[26]

链接: https://pythoncat.top/posts/2023-04-28-fluent

[27]

一期“The future of Python”: https://www.thoughtworks.com/insights/podcasts/technology-podcasts/future-python

[28]

最常用的七种分布式系统模式: https://youtu.be/nH4【【微信】】

[29]

作为程序员,有什么提升生活/工作体验的 App、硬件、服务?: https://www.v2ex.com/t/【【QQ微信】】

[30]

rye 应该存在么?: https://github.com/mitsuhiko/rye/discussions/6

[31]

你是怎样开始程序员职业生涯的?: https://www.v2ex.com/t/【【QQ微信】】

[32]

赞赏: https://img.pythoncat.top/wechat_code.png

[33]

买杯咖啡: https://www.buymeacoffee.com/pythoncat

[34]

爱发电: https://afdian.net/a/pythoncat

[35]

Python猫: https://img.pythoncat.top/python_cat.jpg

[36]

RSS: https://pythoncat.top/rss.xml

[37]

邮件: https://pythoncat.substack.com

[38]

Github: https://github.com/chinesehuazhou/python-weekly

如果你觉得本文有帮助


Oqton CEO对话播客,畅谈人工智能、机器学习与增材制造的产业未来


近日,Oqton公司的高级副总裁、CEO Ben Schrauwen教授接受了著名媒体3DPodcast的采访,探讨了大火的人工智能机器学习和增材制造(3D打印)的整合。

采访中,Ben Schrauwen解释了如何使用机器学习技术,通过对制造数据的分析,来识别和优化潜在的生产瓶颈。此外,该平台还可以使用机器学习来自动调整3D打印机的参数,以提高打印质量和减少材料浪费。

接下来,Schrauwen讨论了将机器学习与3D打印相结合的好处。他解释了如何使用机器学习技术来提高3D打印的效率和精度,以及如何减少材料浪费。他还强调了机器学习可以为3D打印提供更大的设计灵活性,使设计师可以更快地创建新的设计,并在打印过程中进行优化。

最后,Schrauwen分享了他对未来3D打印和机器学习的看法。他认为,随着机器学习技术的不断发展,制造业将会发生重大变革,从而改变我们对制造的方法。他指出,随着3D打印技术的成熟和普及,机器学习将成为3D打印过程中不可或缺的一部分。他还预测,未来的3D打印将更加智能化和自动化,可以为制造业带来更多的机会和挑战。

人工智能教授投身先进制造

在播客中, Schrauwen解释说,之所以放弃大学终身教授职位及研究工作室、创立Oqton,因为他看到了利用人工智能、机器学习和 3D打印等尖端技术改造制造业的重大时机。

在大学学习工程学时,Schrauwen对这些技术革新制造业的潜力着迷。然而,他也看到这些技术的潜力与它们在行业中的实际应用之间存在巨大差距。他发现传统的制造工作流程通常是僵化和不灵活的,这使得制造商难以充分利用这些技术的潜力。

Schrauwen意识到,通过开发一个利用最新技术并提供灵活和集成制造方法的平台,他可以帮助弥合这一差距并释放增材制造和其他先进制造工艺的全部潜力。他相信这个平台可以帮助制造商实现显著的成本节约,提高产品质量和一致性,并使他们能够更快地响应不断变化的市场需求。

此外,Schrauwen还希望对世界产生积极影响。他发现,通过使制造商更高效、更可持续地生产产品,他可以为更加环保和对社会负责的制造业做出贡献。

ChatGPT、机器学习与人工智能

2022年底ChatGPT一经发布,Schrauwen立即将ChatGPT技术引入公司工作工具箱,向Oqton全团队推荐体验这项革新性技术。

Schrauwen在播客中提到了人工智能、机器学习和ChatGPT的区别。ChatGPT是一种基于机器学习技术的自然语言处理模型,它可以生成连续流畅的文本回复。

我们知道著名的Marko【【微信】】(马尔可夫链)在历史上被用于语音识别,但是它们的回溯能力非常有限,Marko【【微信】】假设下一个状态仅取决于前一个状态,而语言并不是这样工作的。语言中存在长期依赖关系,下一个单词的选择取决于对话开始的方式,而不仅仅是前一个单词,Markov模型无法捕捉这种长期依赖关系。

人工智能是一种广泛的概念,指的是计算机系统可以执行类似于人类智能的任务。机器学习则是实现人工智能的一种方法,它使用算法和统计模型来让计算机系统从数据中学习,并自动改进其性能。

Schrauwen认为,机器学习是科技产业变革性的关键技术,并且能够可靠地构建人工智能水平,此举将彻底改变我们经济的各个方面。他认为我们正处于自动化的下一波浪潮的前沿,就像个人电脑如何改变了办公环境和工厂管理一样,机器学习也将彻底改变制造业和其他行业。

在播客中,Schrauwen提到,如果数据集足够大,机器学习可以学习数据中的一般性,并将其应用于训练集之外的数据点。他认为,如果模型足够大且数据集足够大,则深度神经网络可以学习任何东西。因此,他认为机器学习在处理大规模数据和复杂问题方面非常擅长。然而,在目前的情况下,机器学习仍然存在一些局限性,例如处理不确定性和处理小规模数据等方面还需要进一步改进。

探索制造业中的人工智能

随着新时代发展,加工机器的效率越来越高,产能愈发充足。然而,越来越多制造企业面临批量越来越小、新产品推出时间越来越短的全新挑战。另一方面,虽然先进制造的效率高,但实际上很难找到熟练控制、编程先进机器、五轴铣削和金属 3D打印设备的熟练劳动力。

与欧特克和PTC等传统CAD软件相比,Schrauwen表示,创新企业Oqton的优势在于其智能制造软件平台可以更好地应用人工智能、机器学习和自动化技术来提高生产效率和质量,O【【微信】】可以与各种不同类型的机器人、3D打印机和其他自动化设备、先进制造设备进行深度集成,以实现更高效的生产流程。

软件Manufacturing OS通过MES、IoT技术,建立完整产线的数字孪生环境,这些数据会成为 AI自动化的数据引擎库。然后,CAM的编程计算发挥作用,再由IoT技术将编程数据输送到生产机器上。最后,Manufacturing OS为这个制造企业的产线完成了设备、工艺、产程、订单数据的采集、运营与持续优化。

Schrauwen在播客中提到人工智能技术应用于制造业的挑战:先进制造要求数据非常精准,而大部分机器学习模型在精度方面其实存在困难。

以DALL-E生成的图像为例,这些图像从远处看起来很合理,但是当你放大时,你会发现它们充满了不合理的东西,人们有六个手指和奇怪的脸孔。因此,机器学习模型在CAD中实现精度是困难的。虽然有一些方法可以解决这个问题,但是与点云或网格相比,使用机器学习模型实现CAD的精度难度更大。

这是因为点云和网格是离散的数据结构,而机器学习模型需要处理连续的数据结构。因此,使用点云或网格可以避免机器学习模型在处理连续数据时出现的精度问题。此外,点云和网格也更容易被处理和优化,因为它们具有固定的结构和形状。

Oqton的AI模型可以将点云数据转换为CAD模型,并使用这些CAD模型来生成机器指令和路径规划编程,以实现自动化加工和制造。

例如,Oqton的AI模型可以根据建议将更多的零件放在3D打印机的基板、使一次3D打印更高的产量;同时确保生产计划得到优化,灵活交付。

这样的软件系统能够帮助制造企业更好地积累制造经验、工程师们也不再需要整日埋头工艺编程,先进制造技术的使用成本将大幅度降低。

2021年,Oqton首先向修复齿科制造企业推出经过完整AI模型训练的、3D打印金属牙冠牙桥数据准备(编程)自动化方案。这个方案即使处理工艺要求最高的可摘局部义齿支架(RPD),也能为计算机编程(CAM)效率翻了1倍,迅速获得Crown Ceram、Motor City lab Works、Dental-Labor 【【微信】】等苦于人力成本高涨的全球牙科技工所喜爱。

紧接着,Oqton又推出了针对“3D打印批量生产第一应用”隐形正畸矫治器生产的工艺自动化方案,联合3D Systems、Prodways等知名牙科3D打印机,真正做到100%的隐形正畸矫治器从数据处理、打印、切割的全自动产线。

结语

人工智能技术正在以前所未有的方式改变着制造业的面貌。它的引入为企业带来了更高的效率、更精确的生产和更好的创新能力。然而,我们也必须谨慎应对人工智能带来的挑战,例如技术失业和隐私问题。只有通过全球合作和持续的监管,我们才能确保人工智能技术在制造业变革中发挥其最大的潜力,为人类社会带来更加繁荣和可持续的未来。让我们勇敢地迎接这个新时代,以人工智能为助力,推动制造业实现更大的创新、效率和可持续发展,为我们的世界创造出更美好的明天。