Hàm bytes()
trong Python được sử dụng để tạo đối tượng bytes từ các đối tượng có thể chuyển đổi được sang kiểu dữ liệu bytes, chẳng hạn như chuỗi, danh sách số nguyên, bytearray, hoặc dữ liệu nhị phân. Trong Python, bytes
và bytearray
là hai kiểu dữ liệu để lưu trữ dữ liệu nhị phân. bytes
là một đối tượng bất biến (immutable) và không thể thay đổi, trong khi bytearray
là một đối tượng có thể thay đổi (mutable).
# syntax: bytes(x, encoding, error)
x = bytes(4)
print(x) # Kết quả sẽ là b'\x00\x00\x00\x00'
string = "Hello, World!"
bytes_data = bytes(string, 'utf-8')
integer_list = [72, 101, 108, 108, 111]
bytes_data = bytes(integer_list)
Đọc tệp hình ảnh và chuyển đổi nó thành một đối tượng bytes
def read_image_file(file_path):
with open(file_path, "rb") as file:
image_data = file.read()
return bytes(image_data)
Bạn có thể resize ảnh với đối tượng bytes trên như sau:
from PIL import Image
import io
def resize_image(bytes_data, new_width, new_height):
# Đọc dữ liệu từ đối tượng bytes
image = Image.open(io.BytesIO(bytes_data))
# Thay đổi kích thước hình ảnh
resized_image = image.resize((new_width, new_height))
# Lưu hình ảnh đã thay đổi kích thước thành đối tượng bytes
output_bytes = io.BytesIO()
resized_image.save(output_bytes, format=image.format)
resized_bytes = output_bytes.getvalue()
return resized_bytes
Hàm bytes()
có thể được sử dụng để chuyển đổi chuỗi thành đối tượng bytes trước khi áp dụng quá trình mã hóa.
import base64
def encode_base64(message):
# Chuyển đổi chuỗi thành đối tượng bytes
message_bytes = bytes(message, 'utf-8')
# Mã hóa Base64
encoded_bytes = base64.b64encode(message_bytes)
return encoded_bytes
Comments