Consider:
>>> sample = "hello'world" >>> print sample hello'world >>> print sample.replace("'","\'") hello'worldTrong ứng dụng web của tôi, tôi cần lưu trữ chuỗi Python của mình với tất cả các trích dẫn đơn lẻ thoát ra để thao tác sau đó trong trình duyệt máy khách JavaScript. Rắc rối là Python sử dụng ký hiệu thoát hiểm tương tự, vì vậy hoạt động thay thế như chi tiết ở trên không có hiệu lực.
Có một cách giải quyết đơn giản?
Hỏi ngày 14 tháng 9 năm 2010 lúc 10:50Sep 14, 2010 at 10:50
0
Là một giải pháp chung để chuyển dữ liệu từ Python sang JavaScript, hãy xem xét tuần tự hóa nó với thư viện >>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 7 (một phần của thư viện tiêu chuẩn trong Python 2.6+).
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world"Đã trả lời ngày 14 tháng 9 năm 2010 lúc 11:56Sep 14, 2010 at 11:56
Daniel Rosemandaniel RosemanDaniel Roseman
576K61 Huy hiệu vàng844 Huy hiệu bạc856 Huy hiệu đồng61 gold badges844 silver badges856 bronze badges
6
Use:
sample.replace("'", r"\'")hoặc
sample.replace("'", "\\'")Đã trả lời ngày 14 tháng 9 năm 2010 lúc 10:52Sep 14, 2010 at 10:52
2
Thoát các trích dẫn kép trong chuỗi: in ("\" một từ cần dấu ngoặc kép \ "") "một từ cần dấu ngoặc kép". Để trích dẫn một chuỗi trong Python, hãy sử dụng các dấu ngoặc kép bên trong các dấu ngoặc kép hoặc ngược lại. Output: Chuỗi Python Chuỗi Python là chuỗi các ký tự và số. Một chuỗi được bọc xung quanh một tập hợp các trích dẫn đơn hoặc trích dẫn kép. Không có sự khác biệt trong đó bạn sử dụng. Bất cứ điều gì đi vào bên trong các trích dẫn đều được hiểu là là văn bản khác, thay vào đó là một lệnh thực thi. Để chứng minh, đây là một số ví dụ. Trong mỗi ví dụ, có một hoạt động Python thường sẽ thực thi. Nhưng bởi vì biểu thức được bọc bên trong một chuỗi, biểu thức được in ra. Result: Nhưng đây là nơi nó trở nên thú vị. Hãy để xem những gì xảy ra khi bạn đặt một báo giá kép bên trong một chuỗi: Điều này xảy ra bởi vì trình thông dịch Python nhìn thấy một chuỗi biểu thức trong ba phần: Nó nhìn thấy hai chuỗi và tham chiếu đến một đối tượng không tồn tại >>> sample = "hello'world"
>>> import json
>>> print json.dumps(sample)
"hello\'world"
9. Vì vậy, nó không biết phải làm gì. 1. Trích dẫn duy nhất bên trong trích dẫn đôi Sử dụng các trích dẫn đơn trong chuỗi bên ngoài và dấu ngoặc kép trong chuỗi bên trong Output:Ví dụ:
Thoát khỏi các trích dẫn bên trong một chuỗi với một dấu gạch chéo ngược.
Đây là một ví dụ:
Sau đó, bạn cần phải dùng đến những gì được gọi là trình tự thoát. Chúng làm cho nó có thể thêm nhiều trích dẫn trong một chuỗi như bạn muốn.
2. Cách thoát khỏi báo giá trong chuỗi
Để thêm các chuỗi được trích dẫn bên trong các chuỗi, bạn cần thoát khỏi các dấu ngoặc kép. Điều này xảy ra bằng cách đặt một dấu gạch chéo ngược (sample.replace("'", r"\'") 2) trước khi nhân vật trốn thoát.
Trong trường hợp này, đặt nó trước bất kỳ dấu ngoặc kép nào bạn muốn trốn thoát.
Đây là một ví dụ.
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 1Output:
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 2Cách sử dụng dấu gạch chéo ngược trong chuỗi sau đó
Trong Python, dấu gạch chéo ngược là một nhân vật đặc biệt làm cho chuỗi thoát có thể.
Nhưng điều này cũng có nghĩa là bạn không thể sử dụng nó bình thường trong một chuỗi.
Ví dụ:
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 3Output:
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 4Để bao gồm một dấu gạch chéo ngược trong một chuỗi, hãy thoát nó với một dấu gạch chéo ngược khác. Điều này có nghĩa là viết một dấu gạch chéo ngược đôi (sample.replace("'", r"\'") 3).
Ví dụ:
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 5Output:
>>> sample = "hello'world" >>> import json >>> print json.dumps(sample) "hello\'world" 6Để bao gồm một dấu gạch chéo ngược trong một chuỗi, hãy thoát nó với một dấu gạch chéo ngược khác. Điều này có nghĩa là viết một dấu gạch chéo ngược đôi (sample.replace("'", r"\'") 3).
Sự kết luận
Hôm nay bạn đã học cách trích dẫn một chuỗi trong Python.
Cảm ơn vì đã đọc. Tôi hy vọng bạn thích nó!
Mã hóa hạnh phúc!
Đọc thêm
Python Double Trích dẫn so với trích dẫn đơn