lỗi gì thế ạ mn chỉ với mới học nên ngáo !
Lỗi Unexpected indent trong python
Đây là lỗi do thụt lề sai, được coi như là một dạng lỗi cú pháp. Nên nhớ là Python là một ngôn ngữ mà việc xác định khối mã (block code) phụ thuộc vào thụt lề.
Một khối code (thường là khối lệnh của hàm, vòng lặp,…) bắt đầu với thụt lề và kết thúc với dòng đầu tiên không thụt lề. Thụt lề bao nhiêu là tùy thuộc ở bạn nhưng chúng phải nhất quán trong suốt khối code đó, tức là các lệnh trong cùng một khối thì phải có độ thụt lề bằng nhau.
Trong lập trình thì chúng ta thường dùng 4 dấu cách hay 1 lần phím Tab để thụt lề. Mà vì Python là một ngôn ngữ lập trình phụ thuộc vào thụt lề nên những code editor, IDE có chức năng format lại code như VSCode trở nên khá quan trọng và cần thiết, đặc biệt là khi copy code từ trên mạng về =]]
Python không phải cứ thích thụt lề là thụt đâu, có quy tắc cả đấy. Trước khi code thì nên tìm hiểu trước, lỗi này cơ bản mà thấy hỏi miết.
học kiểu đốt cháy giai đoạn nên thế, thường là các bạn newbie chưa học bất kì nnlt nào khác (trừ 1 số ít thiểu năng thật)
thế senpai code lại cho đúng được ko ạ huhu
Đơn giản lắm kouhai, xoá dấu cách dư ở phần đầu câu lệnh dòng 2, 4, 7, 9 là xong. Ngoài ra thì đừng lên đây hỏi mấy câu vớ vẩn, học xong kiến thức cơ bản Python, nhớ học kĩ và đầy đủ, học xong rồi thì mới lên mạng hỏi. Mà trước khi lên DNH hay bất kì forum nào hỏi thì hãy search Google (tốt nhất là bằng tiếng Anh) lỗi em đang gặp, search không thấy hay đúng cái mình cần mới hỏi.
#1. Không nên xài tab, mà nên xài 4 (hoặc 2) dấu cách. Còn khi nào phải thụt ra hay thụt vô, thì học lại căn bản từ đầu.
#2. Song song vừa học nhập môn, thì tìm đọc các bài viết “clean code python” để học cách người ta viết. Người ta viết 10 phần thì nhập môn như mình thấm cũng duoc 0.5, vậy là quá ok.
#3. Ở level nhập môn python, 50% các vấn đề đều có đáp án khi google (từ cộng đồng, và từ trong document của python), 50% còn lại không có đáp án do hỏi những câu hỏi ngố (hay còn gọi là ngu ngốc) do cẩu thả, do sai những thứ không ai làm sai (kiểu hỏi vì sao người Hoa Tinh không nói tiếng Việt)
Hỏi ngu: vì sao không nên dùng tab vậy? Mình code python vẫn tab bình thường mà .-. Mình có thể cài đặt 1 tab tương đương 2 cách hoặc 4 cách tuỳ ý.
Bạn cài đặt nhấn tab thì nó ra space, tức là bạn đang xài space chứ không phải tab. Vậy câu hỏi của bạn là gì?
giờ mới biết cái này, trước giờ cứ tưởng ấn tab là tab :v
Bạn kia hỏi tại sao không nên dùng tab thay vì space kìa, và mình cũng có cùng câu hỏi đó.
Nhòm như bạn copy từ một trang nào đó trên mạng rồi về chạy bị lỗi format thụt đầu dòng ấy nhỉ. Hỏi thật bạn có thực sự đang học không vậy?
Trước mình có coi ở đâu đó trên reddit thì bảo là do ông làm mã nguồn py dùng space nên PEP-8 dùng quy chuẩn vậy luôn cho đồng bộ mã nguồn.
J4F: Mình nghĩ Tab thì có cách sửa một cách thủ công được, ví dụ mình sửa “chiều dài” của 1 tab =10 chẳng hạn, sang máy bạn default 1 tab = 4 thôi thì nó ‘không hợp lý lắm’
Đấy là mình suy đoán thế, cũng chờ câu trả lời hạp lý hơn ^^
tab=10
hay tab=4
ở mỗi máy chỉ là visual view thôi. Nghĩa là máy bạn thấy nó thụt rộng hơn, còn máy mình thấy nó thụt ít hơn.
Nếu bạn chọn option Replace Tab by Space, thì nó mới thực sự ảnh hưởng. Nhưng khi đó thì ở máy mình hay máy bạn đều sẽ chỉ “thấy” 10 spaces thôi.
Tóm lại nó không ảnh hưởng tới python không chạy được.
À mình không nói nó sẽ lỗi, nhìn code nó thụt thụt thò thò nó tếu thôi. Với cả cũng chỉ là suy nghĩ cá nhân thôi của mình thôi.
Là 1 người học lập trình cho dzui, mình xác nhận cái này vì từng bị vài lần
Còn cái này thì đọc thêm cho biết
Chủ đề này vui lắm, ai quan tâm có thể google theo keyword “programming space vs tab” để tham gia holy war nha
Còn mình thì theo bên ít người chọn hơn là dùng Tab, lí do đơn giản là vì mình dùng mỗi một máy để mặc định là 1 tab = 4 space và lười
Spaces make more money than tabs
Hình như mình dùng mixed…
đang học mà mlem mlem