From 2b4a9c234fb8bd84e4dd1d86c4f40fa64e394529 Mon Sep 17 00:00:00 2001 From: sunbohit Date: Wed, 28 Dec 2016 17:09:52 +0800 Subject: [PATCH 1/2] Fix BUG in Python3.5 To make the read_words function can be used in Python3.5 without a BUG "TypeError: a bytes-like object is required, not 'str'" --- tensorlayer/nlp.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tensorlayer/nlp.py b/tensorlayer/nlp.py index 953f2b38b..410822f52 100644 --- a/tensorlayer/nlp.py +++ b/tensorlayer/nlp.py @@ -394,7 +394,7 @@ def simple_read_words(filename="nietzsche.txt"): words = f.read() return words -def read_words(filename="nietzsche.txt", replace = ['\n', '']): +def read_words(filename="nietzsche.txt", replace = [b'\n', b'']): """File to list format context. Note that, this script can not handle punctuations. For customized read_words method, see ``tutorial_generate_text.py``. From 38387fc573058f6c3059a7363df25c301cb08a3a Mon Sep 17 00:00:00 2001 From: sunbohit Date: Wed, 28 Dec 2016 18:15:06 +0800 Subject: [PATCH 2/2] Update nlp.py --- tensorlayer/nlp.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tensorlayer/nlp.py b/tensorlayer/nlp.py index 410822f52..b3e6eea9a 100644 --- a/tensorlayer/nlp.py +++ b/tensorlayer/nlp.py @@ -394,7 +394,7 @@ def simple_read_words(filename="nietzsche.txt"): words = f.read() return words -def read_words(filename="nietzsche.txt", replace = [b'\n', b'']): +def read_words(filename="nietzsche.txt", replace = ['\n', '']): """File to list format context. Note that, this script can not handle punctuations. For customized read_words method, see ``tutorial_generate_text.py``. @@ -415,7 +415,12 @@ def read_words(filename="nietzsche.txt", replace = [b'\n', b'']): - `tensorflow.models.rnn.ptb.reader `_ """ with tf.gfile.GFile(filename, "r") as f: - return f.read().replace(*replace).split() + try: + context_list = f.read().replace(*replace).split() + except: + replace = [x.encode('utf-8') for x in replace] + context_list = f.read().replace(*replace).split() + return context_list def read_analogies_file(eval_file='questions-words.txt', word2id={}): """Reads through an analogy question file, return its id format.