if i>0 : return sqrt(i)
elif i==0: return 0
else : return 1j * sqrt(-i)
VS
if i>0:
return sqrt(i)
elif i==0:
return 0
else:
return 1j * sqrt(-i)
Đưa ra các ví dụ trên, tôi không hiểu tại sao tôi hầu như không bao giờ thấy kiểu đầu tiên trong các cơ sở mã. Đối với tôi, bạn biến mã thành một định dạng bảng hiển thị rõ ràng những gì bạn muốn. Cột đầu tiên hầu như có thể được bỏ qua. Cột thứ hai xác định điều kiện và cột thứ ba cung cấp cho bạn đầu ra bạn muốn. Dường như, ít nhất là với tôi, thẳng thắn và dễ đọc. Tuy nhiên, tôi luôn thấy loại tình huống / trường hợp chuyển đổi đơn giản này xuất hiện ở định dạng thụt lề, mở rộng. Tại sao vậy? Mọi người có tìm thấy định dạng thứ hai dễ đọc hơn không?
Trường hợp duy nhất mà điều này có thể có vấn đề là nếu mã thay đổi và lâu hơn. Trong trường hợp đó, tôi nghĩ việc tái cấu trúc mã thành định dạng dài, thụt lề là hoàn toàn hợp lý. Có phải mọi người đều làm theo cách thứ hai đơn giản vì đó là cách nó luôn được thực hiện? Là người ủng hộ của quỷ, tôi đoán một lý do khác có thể là do mọi người tìm thấy hai định dạng khác nhau tùy thuộc vào mức độ phức tạp của các câu lệnh if / other gây nhầm lẫn? Bất kỳ cái nhìn sâu sắc sẽ được đánh giá cao.
if
nếu nó nằm trên cùng một dòng.