Python

使用 Python 实现主机身份协议的实验

主机身份协议 (HIP) 是一种 3.5 层解决方案,最初旨在分离 IP 地址的双重角色 - 定位器和标识符。使用 HIP 协议不仅可以解决移动性问题,还可以在两个通信终端主机之间建立经过身份验证的安全通道。在这篇短文中,我们首先介绍相关的背景信息。然后,我们介绍一些与椭圆曲线 (EC) 密码学和基于 EC 的 Diffie-Hellman 协议相关的数学背景。最后,我们展示了一些各种密码学原语的微基准测试结果,并在文章结尾总结了我们使用 Python 语言在 Linux 用户空间中实现的 HIP 和 IPSec 的总体性能结果。

理解 Python 的 asyncio

如何开始使用 Python 的 asyncio。今年早些时候,我参加了国际 Python 会议 PyCon。在许多演讲和走廊里的非正式讨论中,一个主题是 Python 中线程的状态——简而言之,既不理想,也不像一些批评者认为的那样糟糕。

使用 cadnano 进行 DNA 几何设计

本文介绍了一个工具,您可以使用它来处理三维 DNA 折纸。该软件包名为 cadnano,目前正在 Wyss 研究所开发。使用此软件包,您将能够构建和操作 DNA 结构的三维表示,并生成您工作成果的出版物质量图形。

AI 文字魔法师

了解如何使用 OpenAI 的生成式预训练 Transformer 2 (GPT-2) 生成文本。可以公平地说,有不止一个人担心某种形式的人工智能 (AI),可能以某种机器人的身体形式出现,会抢走人们的工作。任何重复性或容易描述的工作都被认为是机器人的合理目标,因此驾驶汽车或在工厂工作都是合理的。

Python 的 Mypy——高级用法

Mypy 可以检查的不仅仅是简单的 Python 类型。在我的上一篇文章中,我介绍了 Mypy,一个在 Python 程序中强制执行类型检查的软件包。Python 本身是,并且永远都将保持动态类型语言。但是,Python 3 支持“注解”功能,该功能允许您将对象附加到变量、函数参数和函数返回值。这些注解会被 Python 本身忽略,但可以被外部工具使用。

构建您自己的互联网 радио 接收器

只需按一下按钮,即可收听世界各地的社区。晚上回到家,我喜欢按一下按钮来收听世界的声音。我曾在许多不同的地方居住过——从新西兰的达尼丁到新墨西哥州的圣达菲——在每个城镇,我都爱上了一个体现当地精神的 радио 电台(通常是社区 радио 电台)。只需按一下按钮,我就可以重新与这些地方同步,并且还可以访问新的社区,这要归功于互联网 радио。

使用 pathlib 更轻松的 Python 路径

了解使用 pathlib(“处理路径的面向对象方式”)的好处。处理文件是开发人员最常做的事情之一。毕竟,您经常需要从文件中读取(以读取其他用户、会话或程序保存的信息)或写入文件(以记录其他用户、会话或程序的数据)。

使用 Python 的 pytest 测试您的代码,第二部分

测试函数并不难,但是如何测试用户输入和输出呢?在我的上一篇文章中,我开始研究“pytest”,这是一个用于测试 Python 程序的框架,它真正改变了我看待测试的方式。这是我第一次真正觉得测试是我可以并且应该定期做的事情;pytest 使事情变得如此简单直接。

使用 Python 的 os.walk 函数自动化系统管理任务

使用 Python 的 os.walk 函数遍历文件和目录树。我是一个网络人;我在 1993 年初搭建了我的第一个网站。因此,当我开始进行 Python 培训时,我假设我的大多数学生也将成为 Web 开发人员或有抱负的 Web 开发人员。事实并非如此。虽然我的一些学生肯定对 Web 应用程序感兴趣,但他们中的大多数是软件工程师、测试人员、数据科学家和系统管理员。

周末阅读:Python

Python 易于使用、功能强大、用途广泛,并且是 Linux Journal 读者的最爱。我们汇总了一些最近最受欢迎的 Python 相关文章,供您周末阅读。Reuven M. Lerner 介绍 PyInstaller:想将 Python 程序分发给没有 Python 客户端的客户?PyInstaller 就是答案。Reuven M. Lerner 介绍字节、字符和 Python 2:从 Python 2 迁移到 3?这是您需要了解的关于字符串及其在升级中的作用。Reuven M. Lerner 介绍 Python 3.7 的 Dataclasses:Python 3.7 的 dataclasses 减少了类定义中的重复。Reuven M. Lerner 介绍使用 Pandas 检查数据:您无需成为数据科学家即可使用 Pandas 进行一些基本分析。Reuven M. Lerner 介绍 Python 中的多进程:Python 的“multiprocessing”模块感觉像线程,但实际上启动了进程。

字节、字符和 Python 2

从 Python 2 迁移到 3?这是您需要了解的关于字符串及其在升级中的作用。一个老笑话问:“怎么称呼会说三种语言的人?三语者。两种语言?双语者。一种语言?美国人。”

介绍 Python 3.7 的 Dataclasses

Python 3.7 的 dataclasses 减少了类定义中的重复。Python 的新手经常惊讶于完成相当多的工作只需要很少的代码。在可以完成您所需的大部分工作的强大内置数据结构、处理涉及可迭代对象的许多任务的推导式以及类定义中缺少 getter 和 setter 方法之间,难怪 Python 程序往往比静态编译语言中的程序短。

Python 及其社区进入新阶段

关于 Python 的 BDFL Guido van Rossum,他对 Python 社区的奉献,PEP 572 以及对该语言、开源和整个计算世界健康结果的希望。Python 是一种很棒的编程语言,这一点毋庸置疑。从 1991 年的卑微开端开始,它现在几乎无处不在。无论您是在进行 Web 开发、系统管理、测试自动化、DevOps 还是数据科学,Python 都很可能在您的工作中发挥作用。