Spec-Zone.ru › TensorFlow 2.9

tf.raw_ops.UnicodeTranscode

Транскодирует входной текст из исходной кодировки в кодировку назначения.

Просмотр псевдонимов

Псевдонимы для миграции

Дополнительные сведения см. в руководстве по миграции.

tf.compat.v1.raw_ops.UnicodeTranscode

tf.raw_ops.UnicodeTranscode(
    input,
    input_encoding,
    output_encoding,
    errors='replace',
    replacement_char=65533,
    replace_control_characters=False,
    name=None
)

Вход — это тензор строк любой формы. Выход — это тензор строк той же формы, содержащий транскодированные строки. Строки вывода всегда являются допустимыми строками Юникод. Если вход содержит недопустимые позиции кодирования, атрибут errors устанавливает политику обработки этих позиций. Если используется политика обработки ошибок по умолчанию, недопустимый формат в выводе будет заменён на replacement_char. Если политика обработки ошибок — ignore, все недопустимые позиции кодирования во входе будут пропущены и не будут включены в вывод. Если политика установлена в strict, любой недопустимый формат приведёт к ошибке InvalidArgument.

Эта операция может быть использована с output_encoding = input_encoding для обеспечения правильного формата ввода, даже если он уже находится в желаемой кодировке.

Если входная строка начинается с маркера порядка байтов, необходимой для определения кодировки (например, если кодировка — UTF-16, а BOM указывает на порядок байтов big-endian), то этот BOM будет потреблён и не будет включён в вывод. Если кодировка входа отмечена явным порядком байтов (например, UTF-16-BE), то BOM интерпретируется как неразрывный пробел и сохраняется в выводе (включая всегда для UTF-8).

В итоге, если вход отмечен явным порядком байтов, транскодирование будет точно соответствовать всем кодовым точкам в исходном формате. Если порядок байтов не указан явно, BOM не считается частью самой строки, а рассматривается как метаданные, и поэтому не сохраняется в выводе.

Примеры:

tf.strings.unicode_transcode(["Hello", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE")
<tf.Tensor: shape=(3,), dtype=string, numpy=
array([b'\x00H\x00e\x00l\x00l\x00o',
       b'\x00T\x00e\x00n\x00s\x00o\x00r\x00F\x00l\x00o\x00w',
       b'\x002\x00.\x00x'], dtype=object)>
tf.strings.unicode_transcode(["A", "B", "C"], "US ASCII", "UTF-8").numpy()
array([b'A', b'B', b'C'], dtype=object)
Аргументы
input A Tensor типа string. Текст для обработки. Может иметь любую форму.
input_encoding A string. Кодировка текста входных строк. Может быть любой кодировкой, поддерживаемой алгоритмическими конвертерами ICU ucnv. Примеры: "UTF-16", "US ASCII", "UTF-8".
output_encoding A string из: "UTF-8", "UTF-16-BE", "UTF-32-BE". Кодировка Юникод для вывода. Должна быть одной из "UTF-8", "UTF-16-BE", "UTF-32-BE". Многобайтовые кодировки будут иметь порядок байтов big-endian.
errors Необязательный string из: "strict", "replace", "ignore". По умолчанию "replace". Политика обработки ошибок при обнаружении недопустимого формата во входе. Значение 'strict' заставит операцию генерировать ошибку InvalidArgument при любом недопустимом формате ввода. Значение 'replace' (по умолчанию) заставит операцию заменить любой недопустимый формат во входе на replacement_char кодовую точку. Значение 'ignore' заставит операцию пропустить любой недопустимый формат ввода и не генерировать соответствующий символ вывода.
replacement_char Необязательный int. По умолчанию 65533. Кодовая точка символа замены, используемая вместо любого недопустимого формата ввода при errors='replace'. Может быть использована любая допустимая кодовая точка Юникод. Значение по умолчанию — стандартный символ замены Юникода — 0xFFFD или U+65533.)

Обратите внимание, что для UTF-8 передача символа замены, выразимого в 1 байте, такого как ' ', сохранит выравнивание строки с источником, так как невалидные байты будут заменены символом замены длиной в 1 байт. Для UTF-16-BE и UTF-16-LE любой символ замены длиной в 1 или 2 байта сохранит выравнивание байтов с источником.

replace_control_characters Необязательный bool. По умолчанию False. Заменять ли управляющие символы C0 (00-1F) на replacement_char. По умолчанию false.
name Имя операции (необязательно).
Возвращаемое значение
A Tensor типа string.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/raw_ops/UnicodeTranscode

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API