Python là một ngôn ngữ lập trình mới nổi được phát hành lần đầu tiên vào năm 1991. Ngôn ngữ này được biết đến với thư viện toàn diện lớn và hỗ trợ một số mô hình lập trình như hàm, mệnh lệnh, thủ tục và hướng đối tượng.
‘ Lỗi thụt lề:Mong đợi một khối được thụt lề 'Xảy ra cho tất cả các loại người dùng; cho dù họ là người mới hay đã có kinh nghiệm. Vì Python sắp xếp tất cả mã của nó theo các khoảng trắng chính xác, nếu bạn có thụt lề sai, mã sẽ không được biên dịch và bạn sẽ nhận được thông báo lỗi.
Theo các quy ước được tuân theo trong PEP8, cần có bốn khoảng trắng khi cần thiết. Điều lý tưởng cho mọi lập trình viên là sử dụng thụt lề thích hợp để cải thiện khả năng đọc mã.
Nguyên nhân nào gây ra Lỗi thụt lề trong Python?
Giống như đã đề cập trước đây, lỗi này chủ yếu xảy ra do có lỗi dấu cách hoặc tab trong mã của bạn. Vì Python sử dụng ngôn ngữ thủ tục, bạn có thể gặp lỗi này nếu bạn chưa đặt các tab / khoảng trắng một cách chính xác. Chương trình có thể chạy đúng cách nhưng nếu trình thông dịch tìm thấy lỗi này, thông báo lỗi sẽ xuất hiện ở giữa. Một số nguyên nhân của lỗi là:
- Bạn đang sử dụng cả dấu cách và tab trong mã của bạn. Nếu cả hai được sử dụng thay thế cho nhau, thông dịch viên sẽ không thể xác định mục nào sẽ sử dụng.
- Bạn đã đặt một số thụt lề sai . Nếu không tuân thủ phương pháp thụt lề, bạn sẽ không tránh khỏi lỗi này.
- Bạn quên thụt lề trong câu lệnh ghép chẳng hạn như ‘if’, ‘for’, ‘while’, v.v.
- Bạn quên thụt lề các hàm hoặc lớp do người dùng xác định .
Giải pháp 1:Kiểm tra khoảng trắng / tab sai
Không có cách khắc phục tức thì cho vấn đề này. Vì mã là của bạn, bạn phải xem qua từng dòng và xem bạn đã mắc lỗi ở đâu. Có một số khối trong mã liên quan đến cấu trúc. Nếu có câu lệnh "If", thì cần phải có một thụt lề đối với mã theo sau nó.
Kiểm tra sơ đồ trên. Hãy thấy rằng thụt đầu dòng cho một khối cụ thể vẫn giữ nguyên trong suốt mã ngay cả khi một khối mới được đưa vào giữa. Đảm bảo rằng thụt lề của bạn nhất quán. Nếu bạn đang sử dụng dấu cách, hãy luôn sử dụng dấu cách và nếu bạn đang sử dụng tab, hãy luôn sử dụng tab. Sự kết hợp của cả hai sẽ gây ra vấn đề.
Thụt lề chính xác được hiển thị trong ví dụ trên. Xem vòng lặp "for" để biết người mới bắt đầu. Mọi thứ bên trong vòng lặp ‘for’ phải được thụt vào. Bên trong vòng lặp ‘for’, chúng ta có một câu lệnh ‘if’. Bên trong câu lệnh ‘if’, mọi thứ phải xa hơn thụt lề.
Bạn có thể dễ dàng kiểm tra vị trí xảy ra lỗi thụt lề bằng cách kiểm tra nhật ký lỗi và xem dòng từ nơi lỗi bắt nguồn.
Giải pháp 2:Bật ký hiệu tab / dấu cách trong trình chỉnh sửa
Nếu bạn gặp khó khăn trong việc thụt lề mã của mình bằng cách 'đoán' như tất cả các lập trình viên vẫn làm, bạn có thể bật các ký hiệu tab / khoảng trắng trong IDE hoặc trình chỉnh sửa mã của mình. Tùy chọn này sẽ kích hoạt các 'chấm' nhỏ trong mã của bạn, trong đó mỗi dấu chấm đại diện cho một khoảng trắng hoặc tab. Bạn có thể sử dụng điều này để thụt lề mã đúng cách hơn và đảm bảo rằng không có thụt lề thừa hoặc một số bị thiếu.
Trong ví dụ này, chúng tôi sẽ sử dụng Notepad ++ và xem cách bạn có thể bật các ký hiệu. Nếu bạn đang sử dụng một phần mềm khác để chỉnh sửa mã, bạn có thể bật cài đặt dành riêng cho nó.
- Nhấn Xem> Hiển thị Biểu tượng> Hiển thị Khoảng trắng và TAB
- Bây giờ tùy chọn đã được bật. Bạn cũng có thể bật Hướng dẫn thụt lề để mọi thứ trở nên dễ dàng hơn với bạn.
Kiểm tra ví dụ trên. Xem phần thụt lề được triển khai sau mỗi lớp. Mỗi khoảng trống được thể hiện bằng một dấu chấm. Sau khi thực hiện các thay đổi đối với thụt lề sai trên mã của bạn, hãy chạy lại mã và xem liệu điều này có giải quyết được vấn đề hay không.