Funktsioon str () tagastab antud objekti stringi versiooni.
Süntaks str()
on:
str (objekt, kodeerimine = 'utf-8', vead = 'range')
str () Parameetrid
str()
Meetod võtab kolm parameetrit:
- objekt -
object
mille stringi esitus tagastatakse. Kui pole, tagastab tühja stringi - kodeerimine - antud objekti kodeerimine. UTF-8 vaikeseaded, kui seda pole esitatud.
- vead - reageerimine dekodeerimise ebaõnnestumisel. Vaikimisi
'strict'
.
Neid on kuut tüüpi errors
:
- range - vaikimisi vastus, mis tekitab
UnicodeDecodeError
tõrke korral erandi - ignoreeri - ignoreerib tulemuses kodeerimata Unicode'i
- asenda - asendab kodeerimata Unicode'i küsimärgiks
- xmlcharrefreplace - sisestab kodeerimata Unicode'i asemel XML-märgiviite
- backslashreplace - sisestab
uNNNN
espace järjestuse asemel unencodable Unicode'is - nimeplaat - sisestab
N(… )
kodeerimata Unicode'i asemel põgenemisjärjestuse
Tagastusväärtus väärtuselt str ()
str()
Meetod tagastab stringi, mida peetakse mitteametliku või kenasti prinditav kujutis antud objekti.
Näide 1: teisendamine stringiks
Kui kodeerimise ja vigade parameetrit ei pakuta, str()
kutsub sisemiselt __str__()
objekti meetodit.
Kui ta ei leia __str__()
meetodit, kutsub ta selle asemel repr (obj).
result = str(10) print(result)
Väljund
10
Märkus . Tulemismuutuja sisaldab stringi.
Proovige neid käske ka Pythoni konsoolis.
>>> str ('Aadam')
>>> str (b'Python! ')
Näide 2: Kuidas str () baitide puhul töötab?
Kui encoding
ja errors
parameeter on ette nähtud, peaks esimene parameeter objekt olema baitilaadne objekt (baidid või bytearray).
Kui objektiks on baidid või bytearray , str()
helistab sisemiselt bytes.decode(encoding, errors)
.
Vastasel juhul saab see enne decode()
meetodi kutsumist baitide objekti puhvrisse .
# bytes b = bytes('pythön', encoding='utf-8') print(str(b, encoding='ascii', errors='ignore'))
Väljund
püthn
Siin 'ö'
ei saa märki ASCII dekodeerida. Seega peaks see andma vea. Siiski oleme seadnud errors ='ignore'
. Seega ignoreerib Python märki, mida ei saa dekodeerida str()
.