Функцията str () връща низовата версия на дадения обект.
Синтаксисът на str()е:
str (обект, кодиране = 'utf-8', грешки = 'стриктно')
str () Параметри
В str() метод отнема три параметъра:
- обект -
objectчието низово представяне трябва да бъде върнато. Ако не е предоставено, връща празния низ - кодиране - кодиране на дадения обект. По подразбиране на UTF-8, когато не са предоставени.
- грешки - Отговорът при неуспешно декодиране. По подразбиране
'strict'.
Има шест вида errors:
- стриктно - отговор по подразбиране, който поражда
UnicodeDecodeErrorизключение при неуспех - ignore - игнорира некодируемия Unicode от резултата
- замени - замества некодируемия Unicode на въпросителна
- xmlcharrefreplace - вмъква препратка към XML символ вместо некодируем Unicode
- backslashreplace - вмъква
uNNNNпоследователност от espace вместо некодируем Unicode - namereplace - вмъква
N(… )екранираща последователност вместо некодируем Unicode
Върната стойност от str ()
В str()метода връща низ, който се смята за неформален или добре печат изображение на даден обект.
Пример 1: Преобразуване в низ
Ако параметърът за кодиране и грешки не е предоставен, str()вътрешно извиква __str__()метода на обект.
Ако не може да намери __str__()метода, вместо това извиква repr (obj).
result = str(10) print(result)
Изход
10
Забележка: Резултатната променлива ще съдържа низ.
Опитайте и тези команди на конзолата на Python.
>>> str ('Адам')
>>> str (b'Python! ')
Пример 2: Как работи str () за байтове?
Ако encodingи errorsпараметърът е предоставен, първият параметър, обект , трябва да бъде байт-подобен-обект (байтове или байтарен масив).
Ако обектът е байт или bytearray , str()вътрешно извиква bytes.decode(encoding, errors).
В противен случай той получава байтовия обект в буфера, преди да извика decode()метода.
# bytes b = bytes('pythön', encoding='utf-8') print(str(b, encoding='ascii', errors='ignore'))
Изход
pythn
Тук символът 'ö'не може да бъде декодиран от ASCII. Следователно, това трябва да даде грешка. Ние обаче сме задали errors ='ignore'. Следователно Python игнорира символа, който не може да бъде декодиран str().








