2017-11-09 7 views
0

私のIDEはユニコードの参照を選ぶことはできませんでしたが、(それはPythonライブラリの一部であるので)明らかにエラーもスローされませんでした。しかし、今私は自分自身で関数を再定義したいので、この関数を自分のファイル "unicode"にコピーしてコピーすると認識されず、コンパイルエラーがスローされます。ユニコードが何を参照しているかを知っている人はいますか?テキストパッケージのtext_to_word_sequence()に記載されている "ユニコード"とは何ですか?

答えて

0
def text_to_word_sequence(text, 
          filters='!"#$%&()*+,-./:;<=>[email protected][\\]^_`{|}~\t\n', 
          lower=True, split=" "): 
    """Converts a text to a sequence of words (or tokens). 

    # Arguments 
     text: Input text (string). 
     filters: Sequence of characters to filter out. 
     lower: Whether to convert the input to lowercase. 
     split: Sentence split marker (string). 

    # Returns 
     A list of words (or tokens). 
    """ 
    if lower: 
     text = text.lower() 

    if sys.version_info < (3,) and isinstance(text, unicode): 
     translate_map = dict((ord(c), unicode(split)) for c in filters) 
    else: 
     translate_map = maketrans(filters, split * len(filters)) 

    text = text.translate(translate_map) 
    seq = text.split(split) 
    return [i for i in seq if i] 

unicode文字の代わりにバイト(str)の文字列を指す2.xでタイプです。 3.xの等価はとは対照的にstrです。

2.xのコードパスを削除するだけで、そのコードは問題ありません(もちろん、バグは例外です)。

関連する問題