mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-28 18:59:04 +08:00
45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
from array import array
|
|
|
|
a1 = array("b", [0, 1, 2, 3])
|
|
|
|
assert a1.tobytes() == b"\x00\x01\x02\x03"
|
|
assert a1[2] == 2
|
|
|
|
assert list(a1) == [0, 1, 2, 3]
|
|
|
|
a1.reverse()
|
|
assert a1 == array("B", [3, 2, 1, 0])
|
|
|
|
a1.extend([4, 5, 6, 7])
|
|
|
|
assert a1 == array("h", [3, 2, 1, 0, 4, 5, 6, 7])
|
|
|
|
# eq, ne
|
|
a = array("b", [0, 1, 2, 3])
|
|
b = a
|
|
assert a.__ne__(b) is False
|
|
b = array("B", [3, 2, 1, 0])
|
|
assert a.__ne__(b) is True
|
|
|
|
# slice assignment step overflow behaviour test
|
|
T = 'I'
|
|
a = array(T, range(10))
|
|
b = array(T, [100])
|
|
a[::9999999999] = b
|
|
assert a == array(T, [100, 1, 2, 3, 4, 5, 6, 7, 8, 9])
|
|
a[::-9999999999] = b
|
|
assert a == array(T, [100, 1, 2, 3, 4, 5, 6, 7, 8, 100])
|
|
c = array(T)
|
|
a[0:0:9999999999] = c
|
|
assert a == array(T, [100, 1, 2, 3, 4, 5, 6, 7, 8, 100])
|
|
a[0:0:-9999999999] = c
|
|
assert a == array(T, [100, 1, 2, 3, 4, 5, 6, 7, 8, 100])
|
|
del a[::9999999999]
|
|
assert a == array(T, [1, 2, 3, 4, 5, 6, 7, 8, 100])
|
|
del a[::-9999999999]
|
|
assert a == array(T, [1, 2, 3, 4, 5, 6, 7, 8])
|
|
del a[0:0:9999999999]
|
|
assert a == array(T, [1, 2, 3, 4, 5, 6, 7, 8])
|
|
del a[0:0:-9999999999]
|
|
assert a == array(T, [1, 2, 3, 4, 5, 6, 7, 8])
|