您可以在任何地方、任何时间分配变量。
项目描述
let3
您可以在任何地方、任何时间分配变量。
概述
let3 是Taylor Marks的 let 包的严格分支,添加了允许与Python3或更高版本一起工作的修复,以及一些代码格式调整和微小改进。
文档.
以下概述是从原始 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 3.9或更高版本
pip和setuptools
要安装,请运行
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的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | f29f64342d0b8973b1465ad6cf743e107904a5685d0a7e3e623b18144a329151 |
|
MD5 | 30ca8e5b4710c4ea126b8d6316b7d47f |
|
BLAKE2b-256 | f3951946668c7766b9aeda7de0b9da1ec3a6d0e8ee25a1e66a55f52dc059a5be |
let3-1.1.0-py3-none-any.whl的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 15503a5f1bedd9d128eb6e21d5b993071c68ce553f0c9e497bf79d5285fe0ca3 |
|
MD5 | 011e16e8e3881e6b2e42bef48a136516 |
|
BLAKE2b-256 | 12c183a43ce4b6039ed4347b6781bd93e3e3217f20f03a09e9e5fda30ca22427 |