Trong python 3.5, có thể dự đoán khi nào chúng ta sẽ nhận được một chuỗi nội bộ hoặc khi chúng ta sẽ nhận được một bản sao? Sau khi đọc một vài câu trả lời Stack Overflow về vấn đề này tôi đã tìm thấy this one hữu ích nhất nhưng vẫn không toàn diện. Hơn tôi nhìn Python docs, nhưng interning không được bảo đảm theo mặc địnhCác quy tắc cho chuỗi ký tự của cpython là gì?
thường, tên được sử dụng trong các chương trình Python sẽ được tự động thực tập nội trú, và các bộ từ điển sử dụng để tổ chức mô-đun, lớp hoặc trường hợp thuộc tính đã thực tập nội trú phím.
Vì vậy, câu hỏi của tôi là về intern()
điều kiện bên trong, tức là đưa ra quyết định (cho dù là để thực tập chuỗi chữ hay không): tại sao cùng một đoạn mã hoạt động trên một hệ thống và không vào nhau và những gì quy tắc đã làm tác giả các câu trả lời trên mentioned topic nghĩa khi nói
quy tắc cho thời điều này xảy ra khá phức tạp
Chỉ cần sử dụng '==' và quên nó đi. Đó là chi tiết triển khai. – wim
@erip Tôi tin rằng OP nhận thức được điều đó. Sau khi nhận được thông qua các boilerplate, câu hỏi này dường như được hỏi về các quy tắc interning. – timgeb
Nếu bạn thực sự muốn biết sự khác biệt trong việc triển khai, có lẽ sẽ có ý nghĩa khi chỉ định các phiên bản Python được cài đặt trên cả hai hệ thống. –