Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Ký tự 'b' trước string literal trong Python làm gì?

Tiền tố 'b' hoặc 'B' bị bỏ qua trong Python 2.

Trong Python 3, Bytes literals luôn có tiền tố 'b' hoặc 'B'; chúng tạo instance của kiểu bytes thay vì kiểu str. Chúng chỉ có thể chứa ký tự ASCII; byte có giá trị số 128 trở lên phải được biểu diễn bằng escape sequences.

Python 3.x phân biệt rõ ràng giữa các kiểu:

  • str = '...' literals = chuỗi ký tự Unicode (UTF-16 hoặc UTF-32, tùy cách Python được compile)
  • bytes = b'...' literals = chuỗi octet (số nguyên giữa 0 và 255)