Funkcija str () grąžina nurodyto objekto eilutės versiją.
Sintaksė str()
yra:
str (objektas, kodavimas = 'utf-8', klaidos = 'griežtas')
str () Parametrai
str()
Metodas trunka tris parametrus:
- objektas -
object
kurio eilutės atvaizdą reikia grąžinti. Jei nepateikta, grąžina tuščią eilutę - kodavimas - nurodyto objekto kodavimas. Numatyti UTF-8 numatytieji nustatymai
- klaidos - atsakymas, kai nepavyksta iššifruoti. Pagal numatytuosius nustatymus
'strict'
.
Yra šeši tipai errors
:
- griežtas - numatytasis atsakymas, dėl kurio kyla
UnicodeDecodeError
gedimo išimtis - ignoruoti - rezultate ignoruojamas nekoduojamas „Unicode“
- pakeisti - nekoduojamą „Unicode“ pakeičia klaustuku
- xmlcharrefreplace - vietoj neužkoduojamo „Unicode“ įterpia XML simbolių nuorodą
- backslashreplace -
uNNNN
vietoj nekoduojamo „Unicode“ įterpia espace seką - pavadinimo vieta -
N(… )
vietoj nekoduojamo „Unicode“ įterpia pabėgimo seką
Grąžinimo vertė iš str ()
str()
Metodas grąžina eilutę, kuri yra laikoma neformalų ar gražiai spausdinimui atstovavimas tikroje objekto.
1 pavyzdys: konvertuoti į eilutę
Jei kodavimo ir klaidų parametras nepateikiamas, str()
viduje iškviečia objekto __str__()
metodą.
Jei nepavyksta rasti __str__()
metodo, jis iškviečia repr (obj).
result = str(10) print(result)
Rezultatas
10
Pastaba: Rezultato kintamajame bus eilutė.
Taip pat išbandykite šias komandas „Python“ konsolėje.
>>> str ('Adomas')
>>> str (b'Python! ')
2 pavyzdys: Kaip str () veikia baitams?
Jei encoding
ir errors
parametras yra pateiktas, pirmasis parametras, objektas , turėtų būti į baitus panašus objektas (baitai arba baitai).
Jei objektas yra baitai ar baitai , str()
vidiniai skambučiai bytes.decode(encoding, errors)
.
Priešingu atveju, prieš iškviečiant decode()
metodą , jis gauna baitų objektą į buferį .
# bytes b = bytes('pythön', encoding='utf-8') print(str(b, encoding='ascii', errors='ignore'))
Rezultatas
pitas
Čia simbolio 'ö'
negalima iššifruoti ASCII. Vadinasi, tai turėtų pateikti klaidą. Tačiau mes nustatėme errors ='ignore'
. Taigi „Python“ nepaiso simbolio, kurio negalima iššifruoti str()
.