问题标签 [pyicu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1481 浏览

python - 如何使用 PyICU 将 unicode 文本音译为 ASCII?

PyICU库,我知道它可以用来音译字符串。但是没有文档。任何人都有一个简单的例子,它使用PyICU将 unicode 字符串转译为 ASCII ?

用于音译的 C++ ICU文档在此处,但我不明白如何从 Python 中调用它。

0 投票
2 回答
612 浏览

python - 在pypy下安装PyICU

我想在 Ubuntu linux 上的 pypy 上安装 pyicu,但是这个命令返回以下错误:

该软件包是否与 pypy 不兼容,如果是,我该如何安装?

0 投票
1 回答
521 浏览

python - PyICU 在 Django shell 中工作,但不在 Web 服务器上

尝试在登台服务器上访问 ICU 的 Collat​​or 属性时出现此错误。

当启动 Django 的 shell 并执行完全相同的代码时,一切似乎都和本地一样工作。导致错误的代码是:

我已经libicu52, libicu-dev通过Ondrej 的 PHP5 PPA以及 PyICU 在本地和我们的登台服务器上成功安装了 ICU ( )。运行带有 Python 2.7.5、Django 1.5.5、Nginx 1.4.1 和 uWSGI 1.9.13 的 Ubuntu Server 13.10 的服务器。

这是完整的追溯:

我设法打印了 ICU __dict__,但它给了我一个 ICUError。在本地,ICU 以其实际属性返回,包括 Collat​​or。

代码在 Django 的 shell 中正常工作但不能通过 Web 服务器运行的原因可能是什么?

0 投票
1 回答
557 浏览

python - 在 Heroku 上安装 PyICU

有人知道如何在 Heroku 上安装 PyICU 吗?

这是我到目前为止所尝试的:

  1. 创建了一个 heroku-buildpack-multi 应用程序。

在 .buildpacks

在 aptfile 中

然后 heroku 运行 bash

它安装得很好。

在应用程序的上传阶段(推送),我需要一种方法来做到这一点。

我试过了:

并在我的主目录中创建一个 .pydistutils.cfg 文件

在这两种情况下,GCC 都找不到头文件,但我可以看到

命令行上的标志。

用过的

查找 CPATH=$CPATH/app/.apt/usr/include/x86_64-linux-gnu 前后搜索路径的差异

前:

后:

但我不是 C++ 程序员,找不到问题所在。有任何想法吗?

0 投票
1 回答
1401 浏览

linux - 在 centos 上安装 pyICU 时出现 GCC 错误

在 Centos 中安装多语言库时遇到问题。pyICU 的构建失败,gcc 退出代码为 1。

我在网上四处寻找,并没有找到很多有用的资源。

系统上安装了以下软件包:

  • 点 8.0.2,
  • CentOS 6.6 版(最终版),
  • gcc 4.4.7,
  • libicu-devel 4.2.1
  • 蟒蛇开发2.6.6
  • libevent-devel 1.4.13

日志:

我很感激任何帮助。

0 投票
1 回答
577 浏览

python - Python 使用给定的 sortKey 函数对对象/字典列表进行排序

(我在这里使用 Python 2)

我有一个字典列表,比如说

我想按他们的'name'属性对该列表进行排序。这很容易做到:

现在,因为 Python 的字母排序是 ASCII 驱动的,所以结果将是

而我希望 Œdipus 在 Creon 和 Thor 之间。

按照这个建议,我使用 PyICU 的collator.getSortKey()函数(让我们重命名它以提高可读性),它在字符串sortKey()列表上以这种方式工作:strings

我的问题是:由于sortKey()无论如何我都无法修改该函数,我如何使用它根据某些属性对更复杂的对象(此处为字典)列表进行排序?

目前我发现的唯一方法是在单独的列表中提取字典的值,对其进行排序,然后实现一个自定义函数,根据单独列表的索引和在单独列表中compare(a, b)的索引返回 -1、0 或 1 ,然后调用这个功能:absort()compare()

我觉得这不是很优雅。

0 投票
0 回答
91 浏览

python - 为什么两台机器上的 ICU 输出会不同?

我正在为 Flask 开发 i18n 库 ICU(和 PyICU)的接口。在我的测试套件中,我有一个测试可以检查不同区域设置的输出。我遇到的问题是我的测试在本地通过,而在它们也运行的 TravisCI 实例上,它们失败了。

原因?ICU 的输出在两台机器上明显不同。在一项测试中,我检查了dateformat使用意大利语语言环境在 Python 上执行 dateformat 的结果:it_IT. 本地结果是“2010 年 4 月 12 日,15:46:00”。但是在 TravisCI 实例上,它以一种对我来说没有意义的方式进行了更改。看这里:

如您所见,生成的字符串类似,但添加了这些/s。我不确定为什么会发生这种情况。任何人的想法?

2016 年 10 月 28 日更新

经过大量测试以尝试重现 travis 实例上发生的不同日期格式输出,我无法重现此问题。我尝试了以下方法:

  1. before_install通过将以下内容添加到脚本中,显式设置 travis 实例的语言环境:

    sudo locale-gen "en_US.UTF-8"
    sudo update-locale
    sudo dpkg-reconfigure locales

  2. 我启动了 Travis Trusty Tahr 机器应该基于的 ec2 实例(请参见此处),并尝试安装所需的一切并运行我的测试。没有错误!

  3. 我尝试将我的开发机器语言环境设置为 travis 实例上设置的语言环境。再次,没有错误!.

  4. 我尝试了一个不同的语言环境,只是想看看它是否可能与那个特定的语言环境有关,但得到了另一个异常:

因此,此时似乎可能是区域设置以外的其他原因导致输出不正确。

0 投票
1 回答
859 浏览

python - 在mac上安装pyicu;找不到 -licule 的库

我在我的 Mac 中安装 pyicu 时遇到了一些困难。我第一次遇到这个问题,那是我解决的。但现在安装出现以下错误:

那么,这个 licule 是哪个图书馆?

0 投票
2 回答
7812 浏览

python - 由于 'icu-config' 无法安装 pyicu

我正在尝试根据此链接 https://struggley.wordpress.com/2015/07/14/installation-pyicu-on-mac-osx-yosemite/在 mac 上安装 python 3.5 的 pyicu

但是,当我执行 pip3 install pyicu 时,出现此错误

我想这是因为我没有正确设置 icu-config 的路径。我认为以下两个可能是 icu-config 文件。

但是,我不知道如何设置它的路径。此外,我不知道为什么在教程可以顺利运行时出现此错误。

0 投票
0 回答
338 浏览

pypi - Python Packaging Fix:了解 Wheel 和 Egg 的区别;如何让更广泛的受众获得本地修复?

我试图理解为什么 easy_installpyicu有效而pip install无效(见下文)。还试图理解“带有通用轮子的 PyPi 项目和没有通用轮子的项目有什么区别?” 安装会“更容易”吗?如果是这样,这个合并请求会解决多语言未安装在 Anaconda 机器上的问题吗?

需要有关如何最好地解决与底层依赖项相关的 python 项目安装问题的帮助/建议/解决方案。我在 GitHub Gists 中有两个本地修复程序,但想知道将这个修复程序“放在那里”的最佳方式,以便像我这样的人可以找到它。什么是正常的 Python 社区方法?问题集中在三个项目上:

  • polyglot - python 多语言 NLP 工具包
  • pyicu - 包装 IBM 用于 Unicode C++ 库 (ICU) 的国际组件的 Python 扩展。
  • pycld2 - 由 Dick Sites 维护的 CLD(紧凑语言检测)库

目标:

  • 在运行 Python Anaconda Distribution 的 MacOSX 计算机上安装polyglot
  • 将我找到的修复提供给所有人;发布了很多关于该问题的问题。

这是错误跟踪: 回溯错误

问题(很多):

我做了什么来解决问题(我应该做更多,接下来我应该做什么?)

  • 创建了两个可以在运行 Python 2.7 或 Python 3.5 的 Anaconda 的 Mac 上成功安装 polyglot 的 Gists

两个 Gist 修复程序都有效。但是,这个安装错误是否与车轮有关?如果我安装pyicueasy_install,则安装有效。但是,与pip,不是吗?

在 Python 社区中采取哪些步骤来修复它,以便人们可以找到解决方案或pip install没有问题?

我做了一个测试,如果wheel文件已构建,则 pip 可以正常工作。