当我创建tfrecords文件时,如果写入了unicode字符串,则会出现错误:TypeError:u'\ u634f'具有类型unicode但预期的一个:bytes
writer = tf.python_io.TFRecordWriter(tfrecords_output_filename)
text=u'地离开对方'
example = tf.train.Example(features=tf.train.Features(feature={'text':_bytes_feature([text])}))
writer.write(example.SerializeToString())
writer.close()
但是英文和数字形式都很好:text ='abcd123'
我该如何解决这个问题?
答案 0 :(得分:2)
您必须使用utf-8而不是unicode对文本进行编码,以使其与字节兼容:
text=u'地离开对方'
text = text.encode("utf8")
example = tf.train.Example(features=tf.train.Features(feature={'text':_bytes_feature([text])}))