2014-09-30 29 views

Trả lời

12

Cài đặt tiện ích pep8 cho ipython máy tính xách tay bằng cách sử dụng lệnh sau:

%install_ext https://raw.githubusercontent.com/SiggyF/notebooks/master/pep8_magic.py 

Tham khảo the official docs để biết thêm.

Sau đó, sử dụng chức năng ma thuật Di động %%pep8 để kiểm tra ô cụ thể của bạn để tạo kiểu pep8.

Lưu ý rằng điều này phải được đặt bên trong mỗi ô cần kiểm tra pep8.

Tham khảo this example.

+6

install_ext đã bị phản đối và loại bỏ. Các phần mở rộng bây giờ cần phải được xuất bản trên PyPI và được cài đặt với pip. – Matt

+0

pep8 không còn được dùng nữa và các tiện ích mở rộng hiện cần được xuất bản trên PyPi, xem câu trả lời https://stackoverflow.com/a/47204361/2459096 hoặc srcoll xuống – Mattijn

4

Trong trường hợp này giúp bất cứ ai, tôi đang sử dụng:

conttest "jupyter nbconvert notebook.ipynb --stdout --to script | flake8 - --ignore=W391"

  • conttest chiếu lại khi lưu thay đổi đối với máy tính xách tay
  • flake8 - nói flake8 để có đầu vào từ stdin
  • --ignore=W391 - điều này là do đầu ra của jupyter nbconvert dường như luôn có một "dòng trống ở cuối tệp", vì vậy tôi không muốn flake8 phàn nàn về điều đó.

Tôi gặp sự cố với ô đánh dấu (có độ dài dòng có thể hợp pháp khá dài): ignore markdown cells in `jupyter nbconvert` with `--to script`.

3

Đảm bảo bạn đã chọn mô-đun pycodestyle để có thể kiểm tra mã của bạn dựa trên hướng dẫn kiểu. Sau đó kích hoạt chức năng kỳ diệu bằng pycodestyle_magic mô-đun:

pip install pycodestyle 
pip install pycodestyle_magic 
  • đầu tiên tải sự kỳ diệu trong một tế bào Notebook Jupyter:

%load_ext pycodestyle_magic

  • và sau đó sử dụng các chức năng trong bạn ô để kiểm tra việc tuân thủ với pycodestyle

%%pycodestyle

enter image description here

+0

hoạt động tốt cho đến nay, cảm ơn! Chỉ cần chắc chắn để cài đặt cả hai gói, pycodestyle AND pycodestyle_magic. Đây không phải là quá rõ ràng từ màn hình của bạn (tôi không nhìn thấy mã đầu tiên-bình luận lúc đầu tiên) – hmrc87

+1

rephrased câu đầu tiên, vui vì nó hữu ích – Mattijn

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