Hướng dẫn convert raw string to string python - chuyển đổi chuỗi thô thành chuỗi python

Nếu giá trị đầu vào của bạn là chuỗi str, hãy sử dụng

raw_byte_string.decode['unicode_escape']
0 để chuyển đổi:

import codecs

codecs.decode[raw_unicode_string, 'unicode_escape']

Nếu giá trị đầu vào của bạn là đối tượng

raw_byte_string.decode['unicode_escape']
1, bạn có thể sử dụng phương thức
raw_byte_string.decode['unicode_escape']
2:

raw_byte_string.decode['unicode_escape']

Demo:

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'

Các chuỗi byte Python 2 có thể được giải mã với codec

raw_byte_string.decode['unicode_escape']
3:

>>> import sys; sys.version_info[:2]
[2, 7]
>>> '\\x89\\n'.decode['string_escape']
'\x89\n'

Đối với các chữ unicode [với tiền tố

raw_byte_string.decode['unicode_escape']
4, ví dụ:
raw_byte_string.decode['unicode_escape']
5], sử dụng
raw_byte_string.decode['unicode_escape']
6.

Chuyển đổi chuỗi thành chuỗi thô trong Python #

Để chuyển đổi chuỗi thành chuỗi thô:

  1. Sử dụng phương thức
    raw_byte_string.decode['unicode_escape']
    
    7 để chuyển đổi chuỗi thành đối tượng byte.
  2. Sử dụng phương thức
    raw_byte_string.decode['unicode_escape']
    
    8 để chuyển đổi đối tượng byte thành chuỗi thô.

Copied!

my_str = 'one\ttwo\nthree' print[repr[my_str]] # 👉️ 'one\ttwo\nthree' # ✅ Convert string to raw bytes object my_bytes = my_str.encode['unicode_escape'] print[my_bytes] # 👉️ b'one\\ttwo\\nthree' # ---------------------------------------------- # ✅ Convert string to raw string result = my_str.encode['unicode_escape'].decode[] print[result] # 👉️ one\ttwo\nthree

Chúng tôi đã sử dụng phương thức

raw_byte_string.decode['unicode_escape']
7 để chuyển đổi chuỗi thành đối tượng byte với các ký tự thoát.

Phương thức str.encode trả về một phiên bản được mã hóa của chuỗi dưới dạng đối tượng byte. Mã hóa mặc định là

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
0.

Copied!

my_str = 'one\ttwo\nthree' # 👇️ with escape characters my_bytes = my_str.encode['unicode_escape'] print[my_bytes] # 👉️ b'one\\ttwo\\nthree' # 👇️ without escape characters my_bytes = my_str.encode[] print[my_bytes] # 👉️ b'one\ttwo\nthree'

Lưu ý rằng khi chúng tôi sử dụng mã hóa

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
1, một dấu gạch chéo ngược được thêm vào.

Sử dụng phương thức

raw_byte_string.decode['unicode_escape']
2 để chuyển đổi đối tượng byte thành chuỗi.

Copied!

my_str = 'one\ttwo\nthree' result = my_str.encode['unicode_escape'].decode[] print[result] # 👉️ one\ttwo\nthree

Phương thức byte.decode trả về một chuỗi được giải mã từ các byte đã cho. Mã hóa mặc định là

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
0.

Mã hóa là quá trình chuyển đổi

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
4 thành đối tượng
raw_byte_string.decode['unicode_escape']
1 và giải mã là quá trình chuyển đổi đối tượng
raw_byte_string.decode['unicode_escape']
1 thành
>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
4.

Nếu bạn có quyền truy cập vào khai báo của biến, bạn có thể tiền tố chuỗi với

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
8 để đánh dấu nó thành một chuỗi thô.

Copied!

my_str = r'one\ttwo\nthree' print[my_str] # 👉️ 'one\ttwo\nthree'

Các chuỗi được tiền tố với

>>> import codecs
>>> codecs.decode['\\x89\\n', 'unicode_escape']
'\x89\n'
>>> b'\\x89\\n'.decode['unicode_escape']
'\x89\n'
8 được gọi là chuỗi thô và coi các dấu gạch chéo ngược là ký tự theo nghĩa đen.

Nếu bạn cần nội suy một biến trong một chuỗi thô, hãy sử dụng một chuỗi được định dạng theo nghĩa đen.

Copied!

variable = 'two' my_str = fr'one\t{variable}\nthree' print[my_str] # 👉️ 'one\ttwo\nthree'

Các chuỗi chữ được định dạng [F-Strings] Hãy cho chúng tôi bao gồm các biểu thức bên trong chuỗi bằng cách tiền tố chuỗi với

>>> import sys; sys.version_info[:2]
[2, 7]
>>> '\\x89\\n'.decode['string_escape']
'\x89\n'
0.

Hãy chắc chắn để bọc các biểu thức trong niềng răng xoăn -

>>> import sys; sys.version_info[:2]
[2, 7]
>>> '\\x89\\n'.decode['string_escape']
'\x89\n'
1.

Lưu ý rằng chúng tôi đã có tiền tố chuỗi với

>>> import sys; sys.version_info[:2]
[2, 7]
>>> '\\x89\\n'.decode['string_escape']
'\x89\n'
2 và không chỉ với
>>> import sys; sys.version_info[:2]
[2, 7]
>>> '\\x89\\n'.decode['string_escape']
'\x89\n'
0.

Bài Viết Liên Quan

Chủ Đề