Một thời gian trước, tôi phải nâng cấp một số máy chủ từ Python 2.4 lên Python 2.5. Tôi thấy rằng các tệp .pyc được tạo trong Python 2.4 sẽ bị lỗi khi Python 2.5 cố gắng chạy chúng.Các tệp Python 2.5 .pyc có tương thích với các tệp Python 2.6 .pyc không?
Điều này có xảy ra khi tôi nâng cấp từ 2,5 lên 2,6 không?
EDIT: Dưới đây là chi tiết hơn một chút
Tôi có một máy chủ tệp chứa mã python. Điều này được truy cập bởi cả hai máy chủ Ubuntu và Windows để chạy mã python. Khi họ chạy mã, họ tạo ra các tệp .pyc trên máy chủ tệp.
Tôi thấy rằng khi tôi nâng cấp một trong các máy chủ từ Python 2.4 lên 2.5, tôi gặp sự cố với tệp .pyc. Bây giờ tôi không chắc liệu đó là một máy chạy 2.5 đã cố gắng chạy bytecode 2.4 hay cho dù đó là một máy 2.4 cố gắng chạy 2.5 bytecode, nhưng nếu tôi đã xóa bytecode thì mọi thứ đều ổn cho đến khi xung đột bytecode tiếp theo.
Tôi đã nâng cấp tất cả các máy lên 2.5 và sự cố đã biến mất.
Đôi khi mọi người cố gắng phân phối các tệp .pyc không có tệp .py dưới dạng hình thức bảo vệ IP. –
@gnibbler: Vâng, nhưng điều đó thật ngu ngốc, vì các tệp .pyc rất dễ đọc và dễ dàng giải mã được với một đại diện rất gần như – nosklo
Cảm ơn vì điều đó. Tôi ngạc nhiên bởi lỗi khóa tập tin. Điều đó có nghĩa là tôi không thể nâng cấp từ python 2.5 lên 2.6 một máy chủ cùng một lúc, nhưng phải mang tất cả xuống và nâng cấp tất cả chúng trước khi đưa chúng trở lại. – pwdyson