2012-01-18 31 views
140

Vậy điều gì tốt hơn và tại sao?Tôi có nên sử dụng "trường hợp lạc đà" hoặc dấu gạch dưới trong python không?

def my_function(): 

hoặc

def myFunction(): 
+5

FWIW, tôi nghĩ rằng đây được bao phủ là "không quan trọng" trong một trong những PEPs. Hoặc có vẻ là chấp nhận được từ kinh nghiệm của tôi (chỉ * phù hợp *). Trong mọi trường hợp, điều này là khá chủ quan. –

+69

Tại sao phiếu bầu đóng? Đây là một câu hỏi hoàn toàn hợp lý về những gì được coi là thực hành bình thường trong cộng đồng. – Marcin

+3

có nhiều quy ước mã hóa hợp lệ như các nhà phát triển, điều quan trọng duy nhất là giữ ** cùng quy ước mã hóa ** trong một dự án. –

Trả lời

161

cho mọi thứ liên quan đến hướng dẫn kiểu của Python: tôi khuyên bạn nên đọc PEP8.

Để trả lời câu hỏi của bạn:

tên hàm nên chữ thường, với các từ cách nhau bởi nhấn mạnh nếu cần thiết để cải thiện khả năng đọc.

+47

Bạn đã cắt bớt một phần quan trọng của PEP8: "mixedCase chỉ được phép trong các ngữ cảnh mà đã là kiểu phổ biến (ví dụ: threading.py), để giữ lại khả năng tương thích ngược". Đôi khi, CamelCase là chấp nhận được. –

+7

Điều hoàn toàn mâu thuẫn với thực tế là một nhóm lạc đà tạo thành một biểu tượng rắn rõ ràng trông giống như một đối tượng duy nhất phù hợp với ý tưởng rằng tên phương thức là một thứ (trái ngược với một số đối tượng, từ ngữ) và sau đó được hiểu là một nhóm duy nhất của nhiều thứ). Điều đó thậm chí còn tệ hơn cho _ nếu tên phương thức chứa một từ dành riêng trong đó. –

+2

@SebastianLưu trữ từ hình ảnh trực quan thường được giải quyết bằng cách sử dụng tô sáng cú pháp. – Joost

23

PEP 8 khuyên các hình thức đầu tiên để có thể đọc. Bạn có thể tìm thấy nó here.

Tên chức năng phải là chữ thường, với các từ được phân cách bằng gạch dưới khi cần thiết để cải thiện khả năng đọc.

10

tên hàm nên chữ thường, với các từ cách nhau bởi nhấn mạnh nếu cần thiết để cải thiện khả năng đọc. mixedCase được phép chỉ trong bối cảnh nơi đó là đã có phong cách thắng kiện

Check-out của nó đã được trả lời, click here

+0

Xin lỗi tôi đã bỏ lỡ câu trả lời trước đó với tìm kiếm của tôi trước khi đăng – tdc

+0

@tdc bạn không phải xin lỗi, nó luôn luôn tốt để hỏi. –

Các vấn đề liên quan