Hàm bytearray() trong Python

Hàm bytearray() trong Python trả về đối tượng bytearray của mảng byte cho trước. Cú pháp của hàm bytearray() như thế nào, nó có những tham số gì và cách sử dụng ra sao?

Cú pháp của hàm bytearray():

bytearray([source[, encoding[, errors]]])

Hàm bytearray() trả về một đối tượng bytearray là một chuỗi khả biến (có thể sửa đổi) của các số nguyên trong khoảng 0 <= x <256.

Nếu bạn muốn phiên bản bất biến hãy sử dụng phương thức byte().

Các tham số của hàm bytearray():

Hàm bytearray() có 3 tham số, cả 3 đều là tùy chọn, có thể có hoặc không.

  • source: Khởi tạo mảng byte/
  • encoding: Nếu source là chuỗi, bạn bắt buộc phải thêm tham số này để chuyển đổi, giải mã chuỗi thành byte.
  • errors: Nếu source là chuỗi, errors sẽ cung cấp hành động để lấy khi quá trình giải mã không thành công.

Tham số source có thể được sử dụng để khởi tạo mảng byte theo các cách sau:

Kiểu Mô tả
String Chuyển đổi string sang byte sử dụng str.encode(), đồng thời phải cung cấp cả encoding và errors thì tùy chọn
Integer Tạo ra một mảng với kích thước được cung cấp, tất cả được khởi tạo thành null.
Object Bộ đệm chỉ đọc của đối tượng sẽ được sử dụng để khởi tạo mảng byte
Iterable Tạo một mảng có kích thước tương đương với số đếm của iterable và khởi tạo các phần tử của iterable. Các số nguyên phải nằm trong khoảng từ 0 <= x < 256.
Không có tham số source Tạo một mảng có kích thước là 0.

Hàm bytearray() trả về giá trị nào?

Hàm bytearray() trả về một mảng byte với kích thước cho trước và các giá trị khởi tạo.

Ví dụ về hàm bytearray():

# Ví dụ 1: source là chuỗi
string1 = "quantrimang.com."


# encoding là 'utf-8'
mang1 = bytearray(string1, 'utf-8')
print(mang1)

# Ví dụ 2: source là số


string2 = 10

mang2 = bytearray(string2)
print(mang2)

#Ví dụ 3: source là list


ListSo = [2,4,6,8,10]


mang3 = bytearray(ListSo)
print(mang3)

Khi chạy chương trình trên ta nhận được đầu ra như sau:

bytearray(b'quantrimang.com.')
bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
bytearray(b'\x02\x04\x06\x08\n') 

Xem thêm: 

Thứ Năm, 21/12/2017 11:32
51 👨 687