Hướng dẫn what is a byte in python - một byte trong python là gì

❮ Chức năng tích hợp sẵn



Định nghĩa và cách sử dụng

Hàm

bytes([source[, encoding[, errors]]])
0 trả về đối tượng byte.

Nó có thể chuyển đổi các đối tượng thành các đối tượng byte hoặc tạo đối tượng byte trống của kích thước được chỉ định.

Sự khác biệt giữa ____10 và

bytes([source[, encoding[, errors]]])
2 là
bytes([source[, encoding[, errors]]])
3 trả về một đối tượng không thể sửa đổi và
bytes([source[, encoding[, errors]]])
2 trả về một đối tượng có thể được sửa đổi.


Cú pháp

Byte (x, mã hóa, lỗi)

Giá trị tham số

Tham sốSự mô tả
xMột nguồn để sử dụng khi tạo đối tượng byte.

Nếu nó là một số nguyên, một đối tượng byte trống có kích thước được chỉ định sẽ được tạo.

Nếu đó là một chuỗi, hãy đảm bảo bạn chỉ định mã hóa nguồn.

mã hóaMã hóa chuỗi
lỗiChỉ định những gì cần làm nếu mã hóa thất bại.

Các trang liên quan

Hàm bytearray ()


❮ Chức năng tích hợp sẵn


Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về phương thức python byte () với sự trợ giúp của các ví dụ.

Phương pháp

bytes([source[, encoding[, errors]]])
0 trả về một đối tượng byte bất biến được khởi tạo với kích thước và dữ liệu đã cho.

Thí dụ

message = 'Python is fun'

# convert string to bytes byte_message = bytes(message, 'utf-8')

print(byte_message) # Output: b'Python is fun'


Byte () cú pháp

Phương pháp cú pháp của phương pháp

bytes([source[, encoding[, errors]]])
0 là:

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

Phương thức

bytes([source[, encoding[, errors]]])
0 Trả về một đối tượng byte là chuỗi số nguyên bất biến (không thể sửa đổi) trong phạm vi
bytes([source[, encoding[, errors]]])
8.

Nếu bạn muốn sử dụng phiên bản có thể thay đổi, hãy sử dụng phương thức bytearray ().


tham số byte ()

bytes([source[, encoding[, errors]]])
0 mất ba tham số tùy chọn:

  • Nguồn (Tùy chọn) - Nguồn để khởi tạo mảng byte. - source to initialize the array of bytes.
  • Mã hóa (tùy chọn) - Nếu nguồn là một chuỗi, mã hóa chuỗi. - if the source is a string, the encoding of the string.
  • Lỗi (tùy chọn) - Nếu nguồn là một chuỗi, hành động cần thực hiện khi chuyển đổi mã hóa không thành công (đọc thêm: mã hóa chuỗi) - if the source is a string, the action to take when the encoding conversion fails (Read more: String encoding)

Tham số nguồn có thể được sử dụng để khởi tạo mảng byte theo các cách sau:source parameter can be used to initialize the byte array in the following ways:

Loại hìnhSự mô tả
Sợi dâyChuyển đổi chuỗi thành byte bằng str.encode () cũng phải cung cấp mã hóa và lỗi tùy chọnencoding and optionally errors
Số nguyênTạo một mảng có kích thước được cung cấp, tất cả được khởi tạo thành null
Sự vậtBộ đệm chỉ đọc của đối tượng sẽ được sử dụng để khởi tạo mảng byte
Có thể lặp lạiTạo một mảng có kích thước bằng với số lượng ITEBER và được khởi tạo thành các phần tử có thể lặp lại phải có thể lặp lại của số nguyên giữa
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
0
Không có nguồn (đối số)Tạo một mảng có kích thước 0


byte () giá trị trả về

Phương thức

bytes([source[, encoding[, errors]]])
0 trả về đối tượng byte của kích thước và giá trị khởi tạo đã cho.


Ví dụ 1: Chuyển đổi chuỗi thành byte

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)

Đầu ra

b'Python is interesting.'

Ví dụ 2: Tạo một byte có kích thước số nguyên đã cho

size = 5

arr = bytes(size)

print(arr)

Đầu ra

b'\x00\x00\x00\x00\x00'

Ví dụ 2: Tạo một byte có kích thước số nguyên đã cho

rList = [1, 2, 3, 4, 5]

arr = bytes(rList)

print(arr)

Đầu ra

b'\x01\x02\x03\x04\x05'

Lưu ý: Tôi sẽ giải thích nhiều hơn câu trả lời của mình cho Python 3 vì kết thúc cuộc đời của Python 2 rất gần. I will elaborate more my answer for Python 3 since the end of life of Python 2 is very close.

Trong Python 3

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 bao gồm các chuỗi các giá trị không dấu 8 bit, trong khi
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 bao gồm các chuỗi các điểm mã Unicode đại diện cho các ký tự văn bản từ ngôn ngữ con người.

>>> # bytes
>>> b = b'h\x65llo'
>>> type(b)

>>> list(b)
[104, 101, 108, 108, 111]
>>> print(b)
b'hello'
>>>
>>> # str
>>> s = 'nai\u0308ve'
>>> type(s)

>>> list(s)
['n', 'a', 'i', '̈', 'v', 'e']
>>> print(s)
naïve

Mặc dù

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 dường như hoạt động theo cùng một cách, các trường hợp của chúng không tương thích với nhau, tức là,
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 không thể được sử dụng cùng với các toán tử như
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
8 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
9. Ngoài ra, hãy nhớ rằng so sánh các trường hợp
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 cho sự bình đẳng, tức là sử dụng
b'Python is interesting.'
2, sẽ luôn đánh giá thành
b'Python is interesting.'
3 ngay cả khi chúng chứa chính xác các ký tự.

>>> # concatenation
>>> b'hi' + b'bye' # this is possible
b'hibye'
>>> 'hi' + 'bye' # this is also possible
'hibye'
>>> b'hi' + 'bye' # this will fail
Traceback (most recent call last):
  File "", line 1, in 
TypeError: can't concat str to bytes
>>> 'hi' + b'bye' # this will also fail
Traceback (most recent call last):
  File "", line 1, in 
TypeError: can only concatenate str (not "bytes") to str
>>>
>>> # comparison
>>> b'red' > b'blue' # this is possible
True
>>> 'red'> 'blue' # this is also possible
True
>>> b'red' > 'blue' # you can't compare bytes with str
Traceback (most recent call last):
  File "", line 1, in 
TypeError: '>' not supported between instances of 'bytes' and 'str'
>>> 'red' > b'blue' # you can't compare str with bytes
Traceback (most recent call last):
  File "", line 1, in 
TypeError: '>' not supported between instances of 'str' and 'bytes'
>>> b'blue' == 'red' # equality between str and bytes always evaluates to False
False
>>> b'blue' == 'blue' # equality between str and bytes always evaluates to False
False

Một vấn đề khác khi xử lý

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 có mặt khi làm việc với các tệp được trả về bằng hàm tích hợp
b'Python is interesting.'
6. Một mặt, nếu bạn muốn OT đọc hoặc ghi dữ liệu nhị phân vào/từ một tệp, hãy luôn mở tệp bằng chế độ nhị phân như 'RB' hoặc 'WB'. Mặt khác, nếu bạn muốn đọc hoặc ghi dữ liệu Unicode sang/từ một tệp, hãy lưu ý rằng mã hóa mặc định của máy tính của bạn, vì vậy nếu cần phải vượt qua tham số
b'Python is interesting.'
7 để tránh bất ngờ.

Trong Python 2

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 bao gồm các chuỗi các giá trị 8 bit, trong khi
b'Python is interesting.'
9 bao gồm các chuỗi các ký tự unicode. Một điều cần lưu ý là
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 và
b'Python is interesting.'
9 có thể được sử dụng cùng với các toán tử nếu
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 chỉ bao gồm các ký tự ASCI 7 bit.

Có thể hữu ích khi sử dụng các hàm trợ giúp để chuyển đổi giữa

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 và
b'Python is interesting.'
9 trong Python 2 và giữa
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
2 và
string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
3 trong Python 3.

Một byte giống như đối tượng trong Python là gì?

Trong Python, một đối tượng chuỗi là một loạt các ký tự tạo ra một chuỗi. Theo cách tương tự, một đối tượng byte là một chuỗi các bit/byte đại diện cho dữ liệu. Chuỗi có thể đọc được trong khi byte có thể đọc được máy tính. Dữ liệu được chuyển đổi thành hình thức byte trước khi nó được lưu trữ trên máy tính.a sequence of bits/bytes that represent data. Strings are human-readable while bytes are computer-readable. Data is converted into byte form before it is stored on a computer.

Làm thế nào lớn là một byte trong Python?

Một byte là vị trí bộ nhớ với kích thước 8 bit. Đối tượng byte là một chuỗi byte bất biến, về mặt khái niệm tương tự như một chuỗi. của đối tượng byte là một int không dấu thỏa mãn 0 B 1111 _ 1111> = x> = 0.8 bits. A bytes object is an immutable sequence of bytes, conceptually similar to a string. of a bytes object is an unsigned int that satisfies 0 b 1111 _ 1111 >= x >= 0.

Chuỗi byte vs là gì?

Các đối tượng byte là chuỗi byte, trong khi các chuỗi là chuỗi các ký tự.Các đối tượng byte ở dạng máy có thể đọc được nội bộ, các chuỗi chỉ ở dạng người có thể đọc được.Vì các đối tượng byte có thể đọc được máy, chúng có thể được lưu trữ trực tiếp trên đĩa.. Byte objects are in machine readable form internally, Strings are only in human readable form. Since Byte objects are machine readable, they can be directly stored on the disk.

Làm thế nào để bạn viết byte trong Python?

Viết byte vào tệp trong Python Ví dụ 1: Mở tệp ở chế độ ghi nhị phân và sau đó chỉ định nội dung để ghi dưới dạng byte.Tiếp theo, sử dụng chức năng ghi để viết nội dung byte vào tệp nhị phân.pen a file in binary write mode and then specify the contents to write in the form of bytes. Next, use the write function to write the byte contents to a binary file.