跳转到主要内容

您可以在任何地方、任何时间分配变量。

项目描述

let3

您可以在任何地方、任何时间分配变量。

概述

let3 是Taylor Marks的 let 包的严格分支,添加了允许与Python3或更高版本一起工作的修复,以及一些代码格式调整和微小改进。

PyPI记录.

文档.

以下概述是从原始 let 网站复制(仅对let3进行了必要的更改)。

快速入门

安装后,您只需使用此即可快速验证它是否正常工作

>>> from let import let
>>> if let(count = len("Hello World!")):
...     print(count)
12

文档

在C、Java以及其他许多语言中,可以在if或while条件语句内部赋值变量。这有助于您简洁地同时赋值和检查条件是否满足。

这种能力在Python中不存在,因为Python认为当人们写出类似

if row = db.fetch_results():
    ...

的内容时

if row == db.fetch_results():
    ...

我个人从未犯过这个错误。这更像是一个理论上的错误,可能会发生,但并不值得移除特性,就像Python所选择的那样。

无论如何,这个模块中的let函数提供了接近其他语言中该能力的功能。一些示例

if let(name = longInstanceName.longAttributeName):
    ...

# Yes, db.fetch_results() should just return a generator. No, it doesn't.
while let(results = db.fetch_results()):
    ...

if let(count = len(nameValuePair)) != 1:
    raise Exception(f"Bad amount: {count}")

安装

先决条件

要安装,请运行

python -m pip install --upgrade let3

开发

先决条件

  • 开发严格基于tox。要安装它,请运行

    python -m pip install --upgrade tox

访问开发页面

从源码安装

克隆源码

git clone https://github.com/karpierz/let3.git let3

并运行

python -m pip install ./let3

或在开发模式下

python -m pip install --editable ./let3

许可证

版权(c)2016-2024 Adam Karpierz
版权(c)2016 Taylor Marks
许可协议为MIT
请参阅附带的LICENSE文件。

作者

变更日志

1.1.0 (2024-09-30)

  • 停止支持Python 3.8

  • 设置(依赖项)更新。

1.0.25 (2024-08-13)

  • 添加对Python 3.13的支持

  • 设置(依赖项)更新。

1.0.24 (2024-01-30)

  • 设置更新(现在基于tox >= 4.0)。

  • 添加对Python 3.12的支持

  • 停止支持Python 3.7

  • 添加对PyPy 3.9和3.10的支持

  • 添加对PyPy 3.7和3.8的支持

  • 更新版权年份。

  • tox配置已移动到pyproject.toml

  • 清理。

1.0.21 (2022-10-18)

  • tox配置已移动到pyproject.toml

1.0.20 (2022-08-22)

  • 添加对Python 3.10和3.11的支持

  • 设置更新(目前主要基于pyproject.toml)。

1.0.19 (2022-01-10)

  • 停止支持Python 3.6。

  • 更新版权年份。

  • 设置更新。

1.0.17 (2021-10-14)

  • 设置更新。

1.0.16 (2021-07-19)

  • 错误修复:‘let’现在也可以在最高级别(例如模块)上工作。

  • 设置通用更新和改进。

1.0.15 (2020-10-17)

  • 添加对Python 3.8和3.9的支持

  • 停止支持Python 3.5。

  • 停止支持Python 2。

  • 设置:修复不正确的依赖项版本。

  • 设置通用更新和清理。

  • 修复文档设置。

  • 清理。

1.0.10 (2019-05-21)

  • 更新所需的setuptools版本。

  • 设置更新和改进。

  • 这是支持Python 2的最新版本。

1.0.9 (2018-11-08)

  • 停止支持Python 2.6和3.0-3.3

  • 更新所需的setuptools版本。

1.0.8 (2018-05-08)

  • 更新所需的setuptools版本。

  • 改进和简化设置和打包。

1.0.7 (2018-02-26)

  • 改进和简化设置和打包。

1.0.6 (2018-01-28)

  • 修复tox.ini中的错误和不一致。

  • 更新README.rst。

1.0.3 (2018-01-24)

  • 更新所需的Sphinx版本。

  • 更新doc Sphinx配置文件。

1.0.2 (2017-11-18)

  • 设置改进。

  • 其他小的改进。

1.0.1 (2017-01-05)

  • 创建Taylor Marks的let包的分支,修复允许与Python 3或更高版本一起工作的错误。

  • 小的改进。

原始let的更改

1.0.1(2016年2月25日)

  • 现在,let始终将变量赋值给全局命名空间,而不是局部命名空间。Python解释器有时会优化局部命名空间中的变量——最好不要在背后更改值,因为这会导致非常难以发现的错误。

1.0.0(2016年2月7日)

  • 初始提交

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

let3-1.1.0.zip (20.5 kB 查看散列值)

上传时间

构建分布

let3-1.1.0-py3-none-any.whl (6.3 kB 查看散列值)

上传时间 Python 3