Làm cách nào để chuyển đổi dữ liệu byte thành chuỗi trong Python?
Python hỗ trợ các loại đối tượng chuỗi khác nhau để lưu trữ dữ liệu. Một đối tượng như vậy là một đối tượng bytearray. Như tên gợi ý, một đối tượng bytearray là một mảng byte hoặc một chuỗi byte. Trong bài viết này, chúng ta sẽ thảo luận về các cách khác nhau để chuyển đổi bytearray thành chuỗi trong Python Show
Làm cách nào để tạo một mảng phụ từ một chuỗi?Trước khi chuyển đổi một mảng phụ thành một chuỗi, trước tiên chúng ta hãy thảo luận về cách chúng ta có thể chuyển đổi một chuỗi thành một mảng phụ. Sau khi tạo một đối tượng bytearray từ một chuỗi, chúng ta sẽ tìm hiểu cách chuyển đổi một bytearray thành một chuỗi trong các phần tiếp theo Để chuyển đổi một chuỗi thành một mảng phụ, chúng tôi sử dụng hàm tạo
Đây,
Để chuyển đổi một chuỗi thành một đối tượng bytearray, chúng ta có thể chuyển chuỗi đầu vào và định dạng mã hóa cho hàm tạo bytearray như sau 1 2 3 4 5 6
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject)
đầu ra 1 2 3 4
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog')
Như bạn có thể quan sát, chúng tôi đã tạo một đối tượng bytearray từ một chuỗi. Bây giờ chúng ta sẽ thảo luận về các cách khác nhau để chuyển đổi một mảng thành chuỗi trong python Sử dụng Hàm str() để chuyển đổi Bytearray thành Chuỗi trong PythonChúng ta có thể chuyển đổi một mảng phụ thành một chuỗi bằng cách sử dụng hàm 1 2 3 4
myFloat = 123. 4567 myString = str(myFloat)
Ở đây, chúng tôi không cần chỉ định định dạng mã hóa. Tuy nhiên, nếu chúng ta muốn chuyển đổi một mảng phụ thành chuỗi bằng cách sử dụng hàm 1 2 3 4 5 6 7 8
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject) output_string = str(byteArrayObject, 'utf-8') print("Chuỗi đầu ra là. ", chuỗi đầu ra)
đầu ra 1 2 3 4 5
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog') Đầu ra chuỗi là. Java2Blog
Ở đây, định dạng mã hóa phải giống với định dạng được sử dụng khi tạo đối tượng bytearray. Nếu chúng ta chỉ định bất kỳ định dạng mã hóa nào khác trong hàm 1 2 3 4 5 6 7 8 9
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject) output_string = str(byteArrayObject, 'utf-16') print("Chuỗi đầu ra là. ", chuỗi đầu ra)
đầu ra 1 2 3 4 5 6 7 8
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog') Truy nguyên (hầu hết cuộc gọi gần đây last): Tệp "/home/aditya1117/PycharmProjects/pythonProject/webscraping. py", dòng 5, in <module> output_string = str(byteArrayObject, 'utf-16') Lỗi UnicodeDecode. 'utf-16-le' codec có thể ' t decode byte 0x67 in position 8: dữ liệu bị cắt bớt
Ở đây, bạn có thể thấy rằng phương thức Sử dụng hàm decode() để chuyển Bytearray thành String trong PythonMột cách khác để chuyển đổi một mảng phụ thành chuỗi là sử dụng phương thức Bạn có thể chuyển đổi một mảng phụ thành một chuỗi bằng phương thức 1 2 3 4 5 6 7 8 9 10
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject) output_string = byteArrayObject. giải mã('utf-8') print("Chuỗi đầu ra là. ", chuỗi đầu ra)
đầu ra 1 2 3 4 5
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog') Đầu ra chuỗi là. Java2Blog
Một lần nữa, bạn phải chỉ định cùng một định dạng mã hóa đã được sử dụng trong khi tạo mảng phụ từ chuỗi. Nếu không, bạn sẽ nhận được kết quả đầu ra không mong muốn như hình bên dưới 1 2 3 4 5 6 7 8
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject) output_string = byteArrayObject. giải mã('utf-16') print("Chuỗi đầu ra là. ", chuỗi đầu ra)
đầu ra 1 2 3 4 5 6 7 8
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog') Truy nguyên (hầu hết cuộc gọi gần đây last): Tệp "/home/aditya1117/PycharmProjects/pythonProject/webscraping. py", dòng 5, in <module> output_string = byteArrayObject. giải mã('utf-16') Lỗi UnicodeDecode. 'utf-16-le' codec có thể ' t decode byte 0x67 in position 8: dữ liệu bị cắt bớt
Sử dụng Mô-đun codec để chuyển đổi Bytearray thành Chuỗi trong PythonViệc triển khai chức năng Ở đây, hàm 1 2 3 4 5 6 7 8 9 10
nhập codec
myString = "Java2Blog" byteArrayObject = bytearray(myString, 'utf-8') print("Chuỗi đầu vào là. ", myString) in("Đối tượng mảng phụ là. ", byteArrayObject) output_string = codec. giải mã(byteArrayObject, ') print("Chuỗi đầu ra là. ", chuỗi đầu ra)
đầu ra 1 2 3 4 5
Chuỗi đầu vào string là. Java2Blog Đối tượng dãy byte object là. bytearray(b'Java2Blog') Đầu ra chuỗi là. Java2Blog
Phần kết luậnTrong bài viết này, chúng tôi đã thảo luận về ba cách để chuyển đổi một đối tượng bytearray thành một chuỗi trong python. Tại đây, bạn có thể sử dụng bất kỳ phương pháp nào để thực hiện thao tác. Tuy nhiên, bạn nên đảm bảo rằng bạn chọn đúng định dạng mã hóa. Nếu không, bạn sẽ không thể có được đầu ra mong muốn Làm cách nào để chuyển đổi byte thành chuỗi Python?Các cách khác nhau để chuyển đổi Byte thành chuỗi trong Python. . Sử dụng phương thức giải mã() Sử dụng hàm str() Sử dụng codec. phương pháp giải mã () Sử dụng map() mà không sử dụng tiền tố b Sử dụng gấu trúc để chuyển đổi byte thành chuỗi Làm cách nào để chuyển đổi byte thành chuỗi trong gấu trúc?Nếu bạn đang sử dụng pandas và có khung dữ liệu byte, bạn có thể nhanh chóng chuyển đổi nó thành chuỗi bằng cách gọi str. phương thức giải mã() trên một cột .
Làm cách nào để chuyển đổi mảng byte thành chuỗi?Có 2 cách để chuyển mảng byte thành String. . Bằng cách sử dụng hàm tạo của lớp String Bằng cách sử dụng mã hóa UTF-8 Làm cách nào để chuyển đổi dữ liệu nhị phân thành chuỗi trong Python?Dữ liệu nhị phân được chia thành bộ 7 bit vì bộ nhị phân này làm đầu vào, trả về giá trị thập phân tương ứng là mã ASCII của ký tự trong chuỗi. Mã ASCII này sau đó được chuyển đổi thành chuỗi bằng hàm chr() . |