Trong bài học này, bạn sẽ khám phá các thao tác tuần tự phổ biến mà các đối tượng bytes hỗ trợ. Bạn sẽ xem xét kỹ hơn - Toán tử
in và not in - Các toán tử nối (
+ ) và sao chép (>>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
0) - Lập chỉ mục và cắt lát
- Các chức năng tích hợp sẵn
>>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
1, >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
2 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
3 - Các phương thức cho đối tượng
bytes >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
5 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
6
Để biết thêm thông tin về các giá trị thập lục phân, hãy xem các tài nguyên sau - Mã hóa Unicode & ký tự trong Python. Hướng dẫn không đau
- Mục nhập Wikipedia hệ thập lục phân
Đây là cách sử dụng các toán tử in và not in >>> >>> a = b'abcde'
>>> a
b'abcde'
>>> b'cd' in a
True
>>> b'spam' in a
False
>>> b'spam' not in a
True
Dưới đây là cách sử dụng toán tử nối (+ ) và sao chép ( >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
0)>>> >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
Đây là cách lập chỉ mục và cắt >>> >>> a = b'abcde'
>>> a[2]
99
>>> a[1]
98
>>> a[2:4]
b'cd'
>>> a[1:5]
b'bcde'
Dưới đây là cách sử dụng các hàm tích hợp sẵn >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
1, >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
2 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
3>>> >>> a = b'abcde'
>>> len(a)
5
>>> max(a)
101
>>> chr(101)
'e'
>>> min(a)
97
>>> chr(97)
'a'
Đây là cách sử dụng các phương thức cho đối tượng bytes >>> >>> a = b'spam,egg,spam,bacon,spam,lobster'
>>> a
b'spam,egg,spam,bacon,spam,lobster'
>>> a.count(b'spam')
3
>>> a.count('spam')
Traceback (most recent call last):
File "<input>", line 1, in <module>
a.count('spam')
TypeError: argument should be integer or bytes-like object, not 'str'
>>> a.endswith(b'ster')
True
>>> a.find(b'bacon')
14
>>> a
b'spam,egg,spam,bacon,spam,lobster'
>>> a.split(sep=b',')
[b'spam', b'egg', b'spam', b'bacon' , b'spam', b'lobster']
>>> a.center(40, b'-')
b'----spam,egg,spam,bacon,spam,lobster----'
>>> a.center(40, ' ')
Traceback (most recent call last):
File "<input>", line 1, in <module>
a.center(40, ' ')
TypeError: center() argument 2 must be a byte string of length 1, not 'str'
Đây là cách sử dụng >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
5 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
6>>> >>> a = b'spam,egg,spam,bacon,spam,lobster'
>>> a[1]
112
>>> a[3]
109
>>> hex(a[0])
'0x73'
>>> a[0]
115
>>> list(a)
[115, 112, 97, 109, 44, 101, 103, 103, 44, 115, 112, 97, 109, 44, 98, 97, 99, 111, 110, 44, 115, 112, 97, 109, 44, 108, 111, 98, 115, 116, 101, 114]
>>> b = bytes.fromhex(' aa 68 32 af ')
>>> b
b'\xaah2\xaf'
>>> list(b)
[170, 104, 50, 175]
>>> b
b'\xaah2\xaf'
>>> b.hex()
'aa6832af'
>>> type(b.hex())
<class 'str'>
Alain Rouleau trên >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
49 đó khá là đau đầu. Và tại sao đầu ra có cả >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
50 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
51 trong >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
52? Nhưng điều dường như đang xảy ra là hệ thập lục phân 68 bằng số thập phân 104, đến lượt nó là ascii cho >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
50. Cộng với số thập lục phân 32 là số thập phân 50, lần lượt là ascii cho >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
51. Tất cả đều khá điên rồVeda trên Làm thế nào để giao diện điều khiển trên Mã VS trông rất sặc sỡ? Ricky White Nhóm RP trên Tôi tin rằng Chris sử dụng BPython làm REPL Python của anh ấy. Đó là những gì bạn đang thấy bên trong VS Code Terminal của anh ấy Veda trên Cảm ơn vì đã trả lời. Tôi đã thử cài đặt nó trên windows, nhưng gặp lỗi phụ thuộc khác khi gọi nó. (không tìm thấy mô-đun fcntl ). Tôi đoán tôi phải gắn bó với REPL mặc định thông thường Veda trên Đã sửa xong. Trên cửa sổ, chúng ta cần sử dụng python -m bpython. cli thay vì python để truy cập CLI này Chris Bailey Nhóm RP trên Xin chào @Veda, tôi rất vui vì bạn đã tìm ra giải pháp. >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
57 trên windows đôi khi hơi rắc rối. Tôi đã phát hiện ra rằng nó thường là do sự hỗ trợ của một số gói cơ bản (lời nguyền, v.v.)Trong tương lai, nếu bạn muốn xem xét một số lựa chọn thay thế có thể có, với các tính năng tương tự. >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
58 và >>> a = b'abcde'
>>> a
b'abcde
>>> b = b'fghij'
>>> b
b'fghij'
>>> a + b
b'abcdefghij'
>>> a * 3
b'fghijfghijfghij'
59
Làm cách nào để chuyển đổi byte thành đối tượng Python?
Vì mọi thứ đều là đối tượng trong lập trình Python nên các kiểu dữ liệu thực chất là các lớp và các biến là các thể hiện (đối tượng) của các lớp này. . Phương pháp 1. Sử dụng phương thức giải mã() Phương pháp 2. Sử dụng hàm str() Phương pháp 3. Sử dụng codec. phương pháp giải mã ()
Tệp giống như đối tượng trong Python là gì?
Đối tượng tệp còn được gọi là đối tượng giống như tệp hoặc luồng . Thực tế có ba loại đối tượng tệp. tệp nhị phân thô, tệp nhị phân được đệm và tệp văn bản. Giao diện của chúng được xác định trong mô-đun io. Cách chính tắc để tạo một đối tượng tệp là sử dụng hàm open().
Đối tượng byte trong Python là gì?
Làm cách nào để chuyển đổi byte thành CSV bằng Python?
Giải pháp nhanh . Chuyển đổi đối tượng byte thành chuỗi bằng cách sử dụng str() và cắt [2. -1] để loại bỏ "b". '" kèm theo ký hiệu Chuyển đổi chuỗi thành chuỗi có định dạng CSV bằng cách sử dụng chuỗi. thay thế ('\\t', ','). . Ghi CSV vào một tệp bằng cách sử dụng hàm print() với file=open(. , 'w') đối số |