У Питхон-у, која је разлика између __репр__ и __стр__?


Одговор 1:

На кратак начин покушаћу да објасним. _стр_ и _репр_ су оба за представљање низа с малом разликом. Помоћу репр (технички детаљи објекта) можете позвати функцију питхон евал () да бисте процијенили питхон израз, али не можете.

>>> репр (4) == стр (4)
Истина
>>> репр ('једноставан хаин ...') == стр ('једноставан хаин ...')
Лажно

Сада појединац види излаз како би разумео ово понашање

>>> с = 'једноставан хаин ...'
>>> репр
"'једноставан хаин ...'"
>>> стр (с)
'једноставан хаин ...'
>>> стр (4)
'4'
>>> репр (4)
'4'

Коришћење питхон евал функције за разумевање _репр_ и _стр_

>>> евал (репр ('једноставан хаин ...'))
'једноставан хаин ...'
>>> евал (стр ('једноставан хаин ...'))
Трацебацк (најновији задњи позив):
  Датотека "<стдин>", ред 1, у <модуле>
  Датотека "<стринг>", ред 1, у <модуле>
НамеЕррор: име 'симпле хаин ...' није дефинисано

Сада где да користимо ову функцију. У Питхон-у _репр_ се користи за давање информација о објекту, а _стр_ се користи за штампање или приказивање сврхе.

  • Покушајте имплементирати __репр__ за сваку класу коју имплементирате да бисте дали више техничких детаља о објекту. Покушајте имплементирати __стр__ за класе за које сматрате да је читљивост важнија

Нашао сам овај пример на нету

>>> од датума увођења датетиме
>>> сада = датетиме.нов ()
>>> репр (сада)
'датетиме.датетиме (2013, 2, 5, 4, 43, 11, 673075)'
>>> стр (сада)
'2013-02-05 04: 43: 11.673075'

Надам се да ово разумете.


Одговор 2:

За __репр__, „Ако је то уопште могуће, ово би требало да изгледа као валидан Питхон израз који би могао да се користи за поновно стварање објекта исте вредности (с обзиром на одговарајуће окружење). Ако то није могуће, низ облика <.. .неко користан опис ...> треба вратити. "

Дакле, конкретно, __стр__ за низ "киззи" би био низ: киззи

будући да би __репр__ за низ био низ: 'киззи'


Одговор 3:

За __репр__, „Ако је то уопште могуће, ово би требало да изгледа као валидан Питхон израз који би могао да се користи за поновно стварање објекта исте вредности (с обзиром на одговарајуће окружење). Ако то није могуће, низ облика <.. .неко користан опис ...> треба вратити. "

Дакле, конкретно, __стр__ за низ "киззи" би био низ: киззи

будући да би __репр__ за низ био низ: 'киззи'