2017-05-19 21 views
3

pip3 install slugifyを使用してインストールしたslugifyを使用しようとしています。私は、文字列'hello'をslugifyしようとする場合は、インタプリタで、私は、以下を参照してください。Python 3でslugifyを使用するには?

Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
Type "copyright", "credits" or "license" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

In [1]: from slugify import slugify 

In [2]: slugify('hello') 
--------------------------------------------------------------------------- 
NameError         Traceback (most recent call last) 
<ipython-input-2-a58110f37579> in <module>() 
----> 1 slugify('hello') 

/usr/local/lib/python3.5/dist-packages/slugify.py in slugify(string) 
    22 
    23  return re.sub(r'[-\s]+', '-', 
---> 24    unicode(
    25     re.sub(r'[^\w\s-]', '', 
    26      unicodedata.normalize('NFKD', string) 

NameError: name 'unicode' is not defined 

In [3]: slugify(u'hello') 
--------------------------------------------------------------------------- 
NameError         Traceback (most recent call last) 
<ipython-input-3-acc9f7b8d41e> in <module>() 
----> 1 slugify(u'hello') 

/usr/local/lib/python3.5/dist-packages/slugify.py in slugify(string) 
    22 
    23  return re.sub(r'[-\s]+', '-', 
---> 24    unicode(
    25     re.sub(r'[^\w\s-]', '', 
    26      unicodedata.normalize('NFKD', string) 

NameError: name 'unicode' is not defined 

対照的に、Pythonの2で、後者が作業を行います。

私はこれを取得できますか
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
Type "copyright", "credits" or "license" for more information. 

IPython 2.4.1 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

In [1]: from slugify import slugify 

In [2]: slugify(u'hello') 
Out[2]: u'hello' 

Python 3で動作しますか?

答えて

8

slugify package you installedは、Python 3向けには作成されていませんが、現在はPython 2しかサポートしていません。また、更新される可能性は非常に低いです。伝えるための最も簡単な方法の一つは、そのソースコード全体、それはおそらく、やったことは、Pythonで3

存在しないunicodeれるのpython 2キーワードを使用したことである:

pip install slugify 

あなたがリンクしたものではなく、時代遅れのパッケージです。

リンクしたslugifyパッケージをインストールするには、https://pypi.python.org/pypi/python-slugifyをインストールするときはpython-slugifyと呼ばれ、最新のすべてのPythonバージョンがサポートされています。さらに多くの機能を持ちます。

pip install python-slugify 

そして、他のパッケージと同じ方法でインポート:

from slugify import slugify 

注:あなたは、彼らが同じ名前を使用していますので、あなたは、をインストールし、元のパッケージを削除する必要があります。

関連する問題