Trong python, bạn có thường sử dụng PEP 8 - Hướng dẫn kiểu cho mã Python làm tiêu chuẩn / hướng dẫn mã hóa của mình không? Có bất kỳ tiêu chuẩn chính thức hóa nào khác mà bạn thích không?
Trong python, bạn có thường sử dụng PEP 8 - Hướng dẫn kiểu cho mã Python làm tiêu chuẩn / hướng dẫn mã hóa của mình không? Có bất kỳ tiêu chuẩn chính thức hóa nào khác mà bạn thích không?
Câu trả lời:
"Trong python, bạn thường sử dụng PEP 8 - Hướng dẫn kiểu cho Mã Python làm tiêu chuẩn / hướng dẫn mã hóa của mình? Có bất kỳ tiêu chuẩn chính thức hóa nào khác mà bạn thích không?"
Như đã đề cập, bạn làm theo PEP 8 cho văn bản chính và PEP 257 cho quy ước docstring
Cùng với Hướng dẫn kiểu Python, tôi khuyên bạn nên tham khảo những điều sau:
Tôi tuân theo các nguyên tắc về Thành ngữ và Hiệu quả trong Python của Rob Knight. Tôi nghĩ chúng giống hệt như PEP 8, nhưng tổng hợp hơn và dựa trên các ví dụ.
Nếu bạn đang sử dụng wxPython, bạn cũng có thể muốn xem Hướng dẫn kiểu cho mã wxPython của Chris Barker.
Tôi rất chặt chẽ với PEP-8.
Có ba điều cụ thể mà tôi không thể bận tâm khi chuyển sang PEP-8.
Tránh khoảng trắng không liên quan ngay bên trong dấu ngoặc đơn, dấu ngoặc đơn hoặc dấu ngoặc nhọn.
Đề xuất: spam(ham[1], {eggs: 2})
Tôi vẫn làm điều này: spam( ham[ 1 ], { eggs: 2 } )
Tại sao? Hơn 30 năm có thói quen ăn sâu là bám sát các tên hàm hoặc từ khóa câu lệnh (trong C). Bắt đầu với Fortran IV vào những năm 70.
Sử dụng dấu cách xung quanh các toán tử số học:
Đề xuất: x = x * 2 - 1
Tôi vẫn làm điều này: x= x * 2 - 1
Tại sao? Khoa học lập trình của Gries đề xuất điều này như một cách để nhấn mạnh mối liên hệ giữa nhiệm vụ và biến trạng thái của người đang được thay đổi.
Nó không hoạt động tốt cho nhiều bài tập hoặc bài tập tăng cường, vì tôi sử dụng nhiều khoảng trắng.
Đối với tên hàm, tên phương thức và tên biến phiên bản
Đề xuất: chữ thường, với các từ được phân tách bằng dấu gạch dưới khi cần thiết để cải thiện khả năng đọc.
Tôi vẫn làm điều này: camelCase
Tại sao? Hơn 20 năm có thói quen ăn sâu vào camelCase, bắt đầu với Pascal vào những năm 80.
PEP 8 là tốt, điều duy nhất mà tôi ước nó trở nên khó khăn hơn là cuộc thánh chiến Tabs-vs-Spaces.
Về cơ bản, nếu bạn đang bắt đầu một dự án trong python, bạn cần chọn Tabs hoặc Spaces và sau đó bắn tất cả những kẻ vi phạm trong tầm mắt.
Để thêm vào danh sách các hướng dẫn thành ngữ của bhadra :
Kiểm tra bài thuyết trình của Anthony Baxter về Lập trình Python hiệu quả (từ OSON 2005).
Một đoạn trích:
# dict's setdefault method turns this:
if key in dictobj:
dictobj[key].append(val)
else:
dictobj[key] = [val]
# into this:
dictobj.setdefault(key,[]).append(val)
Tôi tuân theo nó cực kỳ nghiêm ngặt. Vị thần duy nhất trước PEP-8 là các cơ sở mã hiện có.