跳转到主要内容

Python绑定wc(s)width

项目描述

Python绑定wc(s)width

cwcwidth 提供了基于 Cython 的 Python 绑定,用于 POSIX.1-2001 和 POSIX.1-2008 中定义的 wcwidthwcswidth 函数。这些函数在终端上计算 Unicode 字符/字符串的可打印长度。该模块提供了与 wcwidth 相同的功能,并且行为兼容。

对于不遵守 POSIX.1-2001 和 POSIX.1-2008 的系统,使用 Markus Kuhn 的 实现 来提供功能。

依赖关系

  • Cython >= 0.28 (可选,仅用于构建)。如果 Cython 不可用,则不会从源重新生成 C 文件。

快速安装指南

cwcwidth 可以通过 pip 安装

pip install cwcwidth

或运行

python3 setup.py install

用法

>>> import cwcwidth
>>> cwcwidth.wcwidth("a")
1
>>> cwcwidth.wcswidth("コ")
2
>>> cwcwidth.wcswidth("コンニチハ, セカイ!")
19
>>> cwcwidth.wcswidth("コンニチハ, セカイ!", 5)
10

wcwidth 的比较

>>> import wcwidth, cwcwidth, timeit
>>> timeit.timeit(lambda: wcwidth.wcswidth("コンニチハ, セカイ!"))
19.14463168097427
>>> timeit.timeit(lambda: cwcwidth.wcswidth("コンニチハ, セカイ!"))
0.16294104099506512

许可证

代码许可协议为 MIT 许可证。

项目详情


下载文件

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

源分布

cwcwidth-0.1.9.tar.gz (57.9 kB 查看哈希)

上传于

构建的版本

cwcwidth-0.1.9-cp312-cp312-win_amd64.whl (24.9 kB 查看哈希值)

上传于 CPython 3.12 Windows x86-64

cwcwidth-0.1.9-cp312-cp312-win32.whl (22.2 kB 查看哈希值)

上传于 CPython 3.12 Windows x86

cwcwidth-0.1.9-cp312-cp312-musllinux_1_1_x86_64.whl (108.6 kB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.1+ x86-64

cwcwidth-0.1.9-cp312-cp312-musllinux_1_1_i686.whl (102.7 kB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.1+ i686

cwcwidth-0.1.9-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (106.6 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

cwcwidth-0.1.9-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (101.3 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cwcwidth-0.1.9-cp312-cp312-macosx_10_9_x86_64.whl (22.3 kB 查看哈希值)

上传于 CPython 3.12 macOS 10.9+ x86-64

cwcwidth-0.1.9-cp311-cp311-win_amd64.whl (24.6 kB 查看哈希值)

上传于 CPython 3.11 Windows x86-64

cwcwidth-0.1.9-cp311-cp311-win32.whl (21.9 kB 查看哈希值)

上传于 CPython 3.11 Windows x86

cwcwidth-0.1.9-cp311-cp311-musllinux_1_1_x86_64.whl (102.7 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.1+ x86-64

cwcwidth-0.1.9-cp311-cp311-musllinux_1_1_i686.whl (98.8 kB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ i686

cwcwidth-0.1.9-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (100.3 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

cwcwidth-0.1.9-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (96.3 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cwcwidth-0.1.9-cp311-cp311-macosx_10_9_x86_64.whl (21.8 kB 查看哈希值)

上传时间 CPython 3.11 macOS 10.9+ x86-64

cwcwidth-0.1.9-cp310-cp310-win_amd64.whl (24.6 kB 查看哈希值)

上传时间 CPython 3.10 Windows x86-64

cwcwidth-0.1.9-cp310-cp310-win32.whl (22.0 kB 查看哈希值)

上传时间 CPython 3.10 Windows x86

cwcwidth-0.1.9-cp310-cp310-musllinux_1_1_x86_64.whl (95.5 kB 查看哈希值)

上传时间 CPython 3.10 musllinux: musl 1.1+ x86-64

cwcwidth-0.1.9-cp310-cp310-musllinux_1_1_i686.whl (91.8 kB 查看哈希值)

上传时间 CPython 3.10 musllinux: musl 1.1+ i686

cwcwidth-0.1.9-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (92.7 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

cwcwidth-0.1.9-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (89.2 kB 查看哈希值)

上传时间: CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cwcwidth-0.1.9-cp310-cp310-macosx_10_9_x86_64.whl (21.9 kB 查看哈希值)

上传时间: CPython 3.10 macOS 10.9+ x86-64

cwcwidth-0.1.9-cp39-cp39-win_amd64.whl (24.6 kB 查看哈希值)

上传时间: CPython 3.9 Windows x86-64

cwcwidth-0.1.9-cp39-cp39-win32.whl (22.0 kB 查看哈希值)

上传时间: CPython 3.9 Windows x86

cwcwidth-0.1.9-cp39-cp39-musllinux_1_1_x86_64.whl (95.2 kB 查看哈希值)

上传时间: CPython 3.9 musllinux: musl 1.1+ x86-64

cwcwidth-0.1.9-cp39-cp39-musllinux_1_1_i686.whl (91.6 kB 查看哈希值)

上传时间: CPython 3.9 musllinux: musl 1.1+ i686

cwcwidth-0.1.9-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (92.5 kB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

cwcwidth-0.1.9-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (89.0 kB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cwcwidth-0.1.9-cp39-cp39-macosx_10_9_x86_64.whl (21.9 kB 查看哈希值)

上传时间: CPython 3.9 macOS 10.9+ x86-64

cwcwidth-0.1.9-cp38-cp38-win_amd64.whl (24.6 kB 查看哈希值)

上传于 CPython 3.8 Windows x86-64

cwcwidth-0.1.9-cp38-cp38-win32.whl (22.1 kB 查看哈希值)

上传于 CPython 3.8 Windows x86

cwcwidth-0.1.9-cp38-cp38-musllinux_1_1_x86_64.whl (95.5 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ x86-64

cwcwidth-0.1.9-cp38-cp38-musllinux_1_1_i686.whl (92.1 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ i686

cwcwidth-0.1.9-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (92.9 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

cwcwidth-0.1.9-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (89.5 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cwcwidth-0.1.9-cp38-cp38-macosx_10_9_x86_64.whl (21.9 kB 查看哈希值)

上传于 CPython 3.8 macOS 10.9+ x86-64

由以下组织支持