Chuỗi byte trong python là một chuỗi hiện tại với chữ cái b có tiền tố trên đó. Trong bài viết này, chúng ta sẽ xem cách chuyển đổi một từ điển có chuỗi bytecode thành một từ điển bình thường chỉ đại diện cho các chuỗi.
Với giải mã và ascii
Phương thức chuỗi Python decode () giải mã chuỗi bằng cách sử dụng codec đã đăng ký để mã hóa. Nó mặc định là mã hóa chuỗi mặc định. Chúng tôi sử dụng nó để chuyển đổi giá trị bytecode thành các giá trị asci bình thường bằng cách cung cấp ascii làm tham số cho hàm giải mã.
Ví dụ
bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'} print(bstring) # Use decode stringA = {y.decode('ascii'): bstring.get(y).decode('ascii') for y in bstring.keys()} # Result print(stringA)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'} {u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}
Với giải mã và utf-8
Chúng ta có thể thực hiện một cách tiếp cận tương tự như trên nhưng lần này sử dụng utf-8. Thiết kế vòng lặp for cho cặp giá trị khóa và lặp qua từng cặp để chuyển đổi các giá trị thành biểu diễn utf-8.
Ví dụ
bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'} print(bstring) # Use decode stringA = {} for key, value in bstring.items(): stringA[key.decode("utf-8")] = value.decode("utf-8") # Result print(stringA)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'} {u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}