Effizientes 16-Bit-Array in 32-Bit mit Überlauf und Lücken umwandeln
Posted: 11 Feb 2025, 15:18
Angenommen, ich habe die folgende Liste nur aus 16-Bit-Werten: < /p>
Dies bedeutet, dass die Werte nach der Begegnung mit 0 durch 2
(65536) und jegliche Unterschiede über 1 (z. B. 1 bis 3) erhöht werden sollten (z. B. 1 bis 3 ) sollte beibehalten werden. < /p>
Gibt es eine effiziente Möglichkeit, dies in Python zu tun? Meine Arrays bestehen aus Millionen von Punkten.
Code: Select all
[65534, 65535, 0, 1 ...... 65534, 65535, 0 , 1 , 3, 4 ]
< /code>
Ich möchte es in eine 32-Bit-Liste umwandeln, damit: < /p>
[65534, 65535, 65536, 65537 ...... 131070, 131071, 131072 , 131073 , 131075, 131076 ]
(65536) und jegliche Unterschiede über 1 (z. B. 1 bis 3) erhöht werden sollten (z. B. 1 bis 3 ) sollte beibehalten werden. < /p>
Gibt es eine effiziente Möglichkeit, dies in Python zu tun? Meine Arrays bestehen aus Millionen von Punkten.