Màu đen có phải là trình định dạng Python tốt nhất không?

Bằng cách sử dụng Màu đen, bạn đồng ý nhường quyền kiểm soát các chi tiết vụn vặt của định dạng thủ công. Đổi lại, Màu đen mang lại cho bạn tốc độ, tính quyết định và sự tự do khỏi _____ cằn nhằn về định dạng. Bạn sẽ tiết kiệm thời gian và năng lượng tinh thần cho những vấn đề quan trọng hơn

Màu đen giúp đánh giá mã nhanh hơn bằng cách tạo ra sự khác biệt nhỏ nhất có thể. Mã bôi đen trông giống nhau bất kể dự án bạn đang đọc. Định dạng trở nên trong suốt sau một thời gian và thay vào đó, bạn có thể tập trung vào nội dung

Hãy dùng thử ngay bây giờ bằng cách sử dụng Black Playground

Lưu ý - Màu đen hiện đã ổn định

Đen đủi bởi nhiều dự án lớn nhỏ. Black có bộ thử nghiệm toàn diện, với các thử nghiệm song song hiệu quả, định dạng tự động của riêng chúng tôi và trình chạy tích hợp liên tục song song. Bây giờ chúng tôi đã ổn định, bạn không nên mong đợi định dạng lớn sẽ thay đổi trong tương lai. Các thay đổi về phong cách chủ yếu sẽ là phản hồi đối với các báo cáo lỗi và hỗ trợ cho cú pháp Python mới

Ngoài ra, như một biện pháp an toàn làm chậm quá trình xử lý, Black sẽ kiểm tra xem mã được định dạng lại có còn tạo ra AST hợp lệ tương đương hiệu quả với mã gốc hay không [xem phần để biết chi tiết]. Nếu bạn cảm thấy tự tin, hãy sử dụng --fast

Ghi chú

Màu đen được cấp phép theo giấy phép MIT .

lời chứng thực

Mike Bayer, tác giả của SQLAlchemy

Tôi không thể nghĩ ra bất kỳ công cụ đơn lẻ nào trong toàn bộ sự nghiệp lập trình của mình đã giúp tôi tăng năng suất lớn hơn nhờ sự ra đời của nó. Bây giờ tôi có thể thực hiện tái cấu trúc trong khoảng 1% số lần nhấn phím mà trước đây tôi phải thực hiện khi chúng tôi không có cách nào để mã tự định dạng

Viết mã Python là một chuyện và viết mã ở định dạng tốt là một chuyện khác. Các lập trình viên mới vào nghề thường tập trung vào việc đảm bảo mã của họ đang hoạt động và quên định dạng mã đúng cách trong quá trình thực hiện.

Nếu bạn viết một chương trình nhỏ [với 1000 dòng mã], bạn có thể thoát mà không cần định dạng mã của mình

Nhưng khi các chương trình ngày càng phức tạp, chúng ngày càng khó hiểu hơn. Tại một số thời điểm [khoảng 15.000 dòng mã], việc hiểu mã do chính bạn viết trở nên khó khăn hơn

Sự khác biệt giữa làm việc với mã có định dạng tốt và làm việc với mã có định dạng xấu giống như sự khác biệt giữa sống trong cung điện và sống trong một ngôi nhà bẩn thỉu

Tại sao định dạng mã python của bạn lại quan trọng

khả năng đọc

Định dạng mã của bạn sẽ giúp bạn đọc mã hiệu quả. Nó trông có tổ chức hơn và khi ai đó nhìn vào mã của bạn, họ sẽ có ấn tượng tốt

Nó sẽ giúp ích trong các cuộc phỏng vấn mã hóa của bạn

Khi bạn tham gia một cuộc phỏng vấn viết mã, đôi khi người phỏng vấn sẽ quan tâm xem bạn có định dạng mã đúng cách hay không. Nếu bạn quên định dạng đó, bạn có thể mất cơ hội việc làm, chỉ vì mã được định dạng kém của bạn

hỗ trợ nhóm

Định dạng mã của bạn trở nên quan trọng hơn khi bạn làm việc theo nhóm. Một số người có thể sẽ làm việc trên cùng một dự án phần mềm và mã bạn viết phải được đồng đội của bạn hiểu. Nếu không thì sẽ khó làm việc cùng nhau hơn

Nó giúp bạn dễ dàng phát hiện ra lỗi

Mã được định dạng sai có thể khiến nó thực sự rất khó phát hiện ra lỗi hoặc thậm chí hoạt động trên một chương trình. Nó cũng thực sự khủng khiếp khi nhìn vào. Đó là một sự xúc phạm đến đôi mắt của bạn

Pylint và Flake8

Hầu hết các nhà phát triển Python thích sử dụng Pylint hoặc Flake8 để kiểm tra mã của họ để tìm lỗi và hướng dẫn kiểu

Pylint là một công cụ kiểm tra lỗi trong Python. Nó cố gắng thực thi một tiêu chuẩn mã hóa và tìm kiếm mùi mã. Nó cũng có thể tìm kiếm các lỗi loại nhất định, nó có thể đề xuất các đề xuất về cách tái cấu trúc các khối cụ thể và có thể cung cấp cho bạn thông tin chi tiết về độ phức tạp của mã

Flake8 là một thư viện Python bao gồm tập lệnh McCabe của PyFlakes, pycodestyle và Ned Batchelder. Nó là một bộ công cụ tuyệt vời để kiểm tra cơ sở mã của bạn dựa trên kiểu mã hóa [PEP8], các lỗi lập trình như “thư viện đã nhập nhưng không được sử dụng”, “Tên không xác định” và mã không được thụt lề

Vấn đề là các công cụ này chỉ báo cáo các sự cố mà chúng xác định được trong mã nguồn và để lại gánh nặng cho các nhà phát triển Python trong việc khắc phục chúng

Nhưng nếu chúng ta có một công cụ có thể xác định và giải quyết vấn đề cùng một lúc thì sao? . Vì vậy, nó làm cho bạn làm việc hiệu quả hơn

Giới thiệu về màu đen
Biểu trưng màu đen

Từ dự án README

Bằng cách sử dụng Màu đen, bạn đồng ý nhường quyền kiểm soát các chi tiết vụn vặt của định dạng thủ công. Đổi lại, Màu đen mang lại cho bạn tốc độ, tính quyết định và sự tự do khỏi sự cằn nhằn kiểu pycode về định dạng. Bạn sẽ tiết kiệm thời gian và năng lượng tinh thần cho những vấn đề quan trọng hơn

Black có thể format lại toàn bộ file của bạn tại chỗ theo kiểu Black code. Nó giúp bộ não của bạn tập trung vào vấn đề bạn muốn giải quyết và viết mã giải pháp, thay vì bị phân tâm bởi cấu trúc mã và những khác biệt nhỏ về phong cách

Vì vậy, hãy xem làm thế nào để sử dụng nó

Cài đặt màu đen

Màu đen có thể được cài đặt bằng cách chạy pip install black. Nó yêu cầu Python 3. 6. 0+ để chạy. Khi Black được cài đặt, bạn sẽ có một công cụ dòng lệnh mới có tên là black trong trình bao của mình và bạn đã sẵn sàng để bắt đầu

Để bắt đầu ngay với các giá trị mặc định hợp lý, hãy chọn tệp python bạn muốn định dạng rồi viết tên tệp màu đen. py trong thiết bị đầu cuối. Sau đó, Black sẽ định dạng tệp python của bạn

Bây giờ chúng ta sẽ xem Đen có thể giúp chúng ta làm gì

Định dạng một tệp duy nhất

Hãy xem ví dụ đơn giản này. đây là hai hàm python của tôi trong tệp python có tên sample_code. py

sample_code. py

Bạn có thể sử dụng black sample_code.py trong thiết bị đầu cuối để thay đổi định dạng. Sau khi chạy Black, bạn sẽ thấy đầu ra sau

Sau đó, bạn có thể mở sample_code. py để xem mã python được định dạng

Mã Python hiện đã được định dạng và dễ đọc hơn

Định dạng nhiều tệp

Để định dạng nhiều hơn một tệp python, hãy viết black folder_name/ trong thiết bị đầu cuối

Định dạng tất cả các tệp python trong thư mục

Ba tệp python trong thư mục có tên python_with_black đã được định dạng lại

Kiểm tra tập tin để định dạng

Nếu bạn không muốn Black thay đổi tệp của mình, nhưng bạn muốn biết liệu Black có nghĩ rằng một tệp nên được thay đổi hay không, bạn có thể sử dụng một trong các lệnh sau

black --check .. Điều này sẽ kiểm tra [các] tệp python nào có thể được định dạng trong thư mục hiện tại [nhưng không thực sự sửa đổi [các] tệp python]

Kiểm tra [các] tệp để định dạng

________số 8. Điều này cho thấy những gì cần phải được thực hiện với tệp nhưng không sửa đổi tệp

kiểm tra khác biệt sau khi định dạng

Thay đổi số lượng ký tự trên mỗi dòng

Lưu ý rằng Màu đen mặc định là 88 ký tự cho độ dài dòng của nó, nhưng bạn có thể thay đổi điều đó bằng cách sử dụng tùy chọn “-l” hoặc “- -line-length”

Ví dụ: để thay đổi thành 60 ký tự. black -l 60 python_file.py

Màu đen trong Máy tính xách tay Jupyter

Đối với người dùng máy tính xách tay Jupyter, bạn vẫn có thể tự động định dạng mã python của mình bằng tiện ích mở rộng đơn giản này có tên là Jupyter Black. Tiện ích mở rộng này định dạng lại/làm đẹp mã trong ô mã của sổ ghi chép bằng màu đen

Tiện ích mở rộng Jupyter Black cung cấp

  • Nút thanh công cụ
  • Phím tắt để định dạng lại ô mã hiện tại [mặc định. Ctrl-B]
  • Phím tắt để định dạng lại toàn bộ ô mã [mặc định. Ctrl-Shift-B]

Cài đặt Jupyter Đen

Trước tiên hãy đảm bảo rằng bạn đã cài đặt jupyter-contrib-nbextensions và màu đen, sau đó chạy các lệnh sau

jupyter nbextension install //github.com/drillan/jupyter-black/archive/master.zip — user

Sau đó kích hoạt tiện ích mở rộng bằng cách chạy

jupyter nbextension enable jupyter-black-master/jupyter-black

Bây giờ bạn có thể bắt đầu định dạng mã python của mình trong từng ô của sổ ghi chép

Đầu tiên, chọn ô sổ ghi chép mà bạn muốn định dạng mã python của mình, sau đó nhấp vào nút tiện ích mở rộng có tên Đen

Trước khi sử dụng Jupyter Black

Sau đó nhấp vào nút Jupyter Black

Nút đen của Jupyter
Sau khi sử dụng Tích hợp Jupyter BlackEditor

Bạn có thể tích hợp Black với các trình chỉnh sửa yêu thích của mình. Hiện tại Black hỗ trợ PyCharm/IntelliJ IDEA, Wing IDE, Vim, Visual Studio Code, Sublime Text 3, Atom/Nuclide, Kakoune và Thonny. Làm theo hướng dẫn tại đây để tích hợp Black với trình chỉnh sửa yêu thích của bạn

Nếu bạn muốn tìm hiểu thêm về Black, tôi khuyên bạn nên xem bài nói chuyện PyCon 2019 của Łukasz Langa

Nếu bạn đã học được điều gì đó mới hoặc thích đọc bài viết này, vui lòng chia sẻ nó để những người khác có thể xem nó. Cho đến lúc đó, hẹn gặp lại bạn trong bài viết tiếp theo. Bạn cũng có thể liên hệ với tôi trên Twitter @Davis_McDavid

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

David David

Nhà khoa học dữ liệu. Nhà thực hành và huấn luyện AI. Người phát triển phần mềm. Nói chuyện, giảng dạy, viết lách. Tác giả tại freeCodeCamp News. Liên hệ với tôi qua Twitter @Davis_McDavid

Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn

Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Trình định dạng Python nào là tốt nhất?

11 Tiện ích mở rộng mã VS tốt nhất cho Python [2022] .
Sắp xếp dòng
Trình định dạng màu đen
Cầu vồng thụt lề
Bộ tô màu cặp giá đỡ 2
nguồn
Trình tạo chuỗi tài liệu Python
Ống kính Git

Màu đen có phải là kẻ nói dối Python không?

Đen là trình định dạng tự động, không phải trình giả mạo Python hay trình thông dịch.

Màu đen có tương thích với pep8 không?

Đen là trình định dạng cố định tuân thủ PEP 8 . Định dạng lại màu đen toàn bộ tệp tại chỗ. Các tùy chọn cấu hình kiểu được giới hạn có chủ ý và hiếm khi được thêm vào.

PyCharm có sử dụng màu đen không?

Trình định dạng mã PyCharm được sử dụng để định dạng toàn bộ tệp và một phần riêng biệt của tệp như đối với đoạn mã được tái cấu trúc hoặc dán. Đó là lý do tại sao PyCharm cần phải có cấu hình định dạng tương thích với Black . Xem thêm PY-30757 về cách sử dụng chính công cụ màu đen để định dạng lại mã trong PyCharm.

Chủ Đề