Ez miért nulla? Python
Figyelt kérdés
Van egy bufferem ami 1540138 bajt hosszu, van egy poziciom ami a pos = 1574-re mutat. Es ebbol a poziciobol ki akarom masolni az elotte es utana levo bajtokat is, tehat +/- bajtokat. De valamiert nulla stringet masol ki? Nem ertem, es megorulok benne.
print(pos, len(self.buf))
print(len(self.buf[pos - 0x1000 : pos + 0x1000]))
Az alábbit irja ki a program:
1574 1540138
0
jan. 22. 11:07
1/2 A kérdező kommentje:
Egy konkret pelda:
>>> s="\x00"*1540138
>>> pos=1574
>>> print(len(s[pos - 0x1000 : pos + 0x1000]))
0
jan. 22. 11:10
2/2 anonim válasza:
0x1000 = 65536
1574 - 65536 = -63962
így negatív kezdési pontot adsz meg a részlista kezdési pontjának.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!