py/objarray: bytearray: Allow 2nd/3rd arg to constructor.

If bytearray is constructed from str, a second argument of encoding is
required (in CPython), and third arg of Unicode error handling is allowed,
e.g.:

bytearray("str", "utf-8", "strict")

This is similar to bytes:

bytes("str", "utf-8", "strict")

This patch just allows to pass 2nd/3rd arguments to bytearray, but
doesn't try to validate them to not impact code size. (This is also
similar to how bytes constructor is handled, though it does a bit
more validation, e.g. check that in case of str arg, encoding argument
is passed.)
This commit is contained in:
Paul Sokolovsky
2018-09-03 21:52:35 +03:00
committed by Damien George
parent b6ebb4f04e
commit 674e069ba9
2 changed files with 4 additions and 2 deletions

View File

@@ -1,6 +1,7 @@
# test construction of bytearray from different objects
# bytes, tuple, list
print(bytearray(b'123'))
print(bytearray('1234', 'utf-8'))
print(bytearray('12345', 'utf-8', 'strict'))
print(bytearray((1, 2)))
print(bytearray([1, 2]))