Tôi có một chuỗi chứa cả dấu ngoặc kép và dấu gạch chéo ngược mà tôi muốn đặt thành một biến trong Python. Tuy nhiên, bất cứ khi nào tôi cố gắng thiết lập nó, dấu ngoặc kép hoặc dấu gạch chéo bị loại bỏ hoặc thoát. Dưới đây là ví dụ:Trích dẫn các dấu gạch chéo ngược trong các chuỗi ký tự Python
>>> foo = 'baz "\"'
>>> foo
'baz ""'
Vì vậy, thay vì baz "\"
như tôi muốn tôi nhận được baz ""
. Nếu sau đó tôi cố gắng thoát khỏi dấu gạch chéo ngược, nó cũng không giúp được:
>>> foo = 'baz "\\"'
>>> foo
'baz "\\"'
Bây giờ khớp với những gì tôi đưa vào nhưng không phải những gì tôi muốn ban đầu. Làm thế nào để bạn có được xung quanh vấn đề này?
Nếu bạn in như Charles Duffy đã làm ở trên, nó sẽ xuất hiện một cách chính xác. Khi bạn chỉ làm "foo", Python đang sử dụng hàm __repr __() để hiển thị chuỗi. Đó là đầu ra có thêm dấu gạch chéo ngược để khi bạn gán kết quả cho biến, nội dung sẽ giống nhau. –
Điểm tuyệt vời, tôi đã cập nhật câu trả lời của mình để thêm "lý do". –