Python tự động thêm gợi ý loại

PyCharm cung cấp nhiều phương tiện khác nhau để hỗ trợ kiểm tra và kiểm tra các loại đối tượng trong tập lệnh của bạn. PyCharm hỗ trợ gợi ý loại trong chú thích chức năng và nhập nhận xét bằng cách sử dụng mô-đun typing và định dạng được xác định bởi PEP 484

Thêm gợi ý loại

Mặc dù PyCharm hỗ trợ tất cả các phương pháp thêm loại được hỗ trợ trong PEP 484, nhưng sử dụng gợi ý loại thông qua các hành động có ý định là cách thuận tiện nhất. Tùy thuộc vào trình thông dịch bạn sử dụng, loại được thêm dưới dạng chú thích (Python 3) hoặc dưới dạng nhận xét (Python 2)

Để thêm gợi ý loại, hãy làm theo các bước sau

  1. Chọn một yếu tố mã

  2. Nhấn Alt+Enter

  3. Chọn Thêm gợi ý loại cho. .

  4. Nhấn Enter để hoàn thành tác vụ hoặc chỉnh sửa loại nếu thích hợp

Thí dụ

Ý định hành động

Mã kết quả cho chú thích (Python 3)

Biến

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Chức năng

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Thuộc tính lớp

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Thí dụ

Ý định hành động

Mã kết quả cho nhận xét (Python 2)

Biến

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Chức năng

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Thuộc tính lớp

Python tự động thêm gợi ý loại
Python tự động thêm gợi ý loại

Bạn cũng có thể sử dụng sơ khai Python để chỉ định các loại biến, hàm và trường lớp

Chuyển đổi nhận xét

Đối với gợi ý loại dựa trên nhận xét, PyCharm đề xuất một hành động có ý định cho phép bạn chuyển đổi gợi ý loại dựa trên nhận xét thành chú thích biến. Ý định này có tên Chuyển thành chú thích biến và hoạt động như sau.

Tính năng này có sẵn trong Python 3

Trước

Sau

từ nhập Danh sách nhập, Tùy chọn xs = [] # gõ. Danh sách[Tùy chọn[str]]

từ nhập Danh sách nhập, Tùy chọn xs. Danh sách[Tùy chọn[str]] = []

Nhập gợi ý xác thực

Bất cứ khi nào bạn đang áp dụng các gợi ý về loại, PyCharm sẽ kiểm tra xem loại đó có được sử dụng đúng theo các PEP được hỗ trợ hay không. Nếu có lỗi sử dụng, cảnh báo tương ứng sẽ được hiển thị và đề xuất hành động được đề xuất. Dưới đây là các ví dụ xác thực

Lỗi xác nhận

hành động được đề xuất

Sao chép khai báo kiểu

Python tự động thêm gợi ý loại

Loại bỏ một trong hai khai báo kiểu

Số lượng đối số trong khai báo kiểu khác với số lượng đối số của hàm

Python tự động thêm gợi ý loại

Điều chỉnh số lượng đối số

Nhập nhận xét với giải nén không khớp với các mục tiêu tương ứng

Python tự động thêm gợi ý loại

Kiểm tra định dạng đích và sửa đổi loại nhận xét cho phù hợp

Cú pháp sai của tham số Callable

Python tự động thêm gợi ý loại

Sử dụng định dạng được đề xuất và thêm dấu ngoặc bắt buộc để bọc thông số Callable

Loại không mong muốn trong biểu thức gán

Python tự động thêm gợi ý loại

Căn chỉnh các loại để khớp với mẫu dự kiến

Gán giá trị cho biến Final

Python tự động thêm gợi ý loại

Bạn không thể thay đổi một biến được chú thích là Final. Cân nhắc thay đổi loại biến

Kế thừa một lớp được chú thích là Final

Python tự động thêm gợi ý loại

Bạn không thể kế thừa một lớp có chú thích Final. Cân nhắc tạo một lớp học khác

Ghi đè một phương thức được trang trí bằng @final

Python tự động thêm gợi ý loại

Bạn không thể ghi đè một phương thức được trang trí bằng @final. Xem xét việc xác định một phương pháp khác

Loại đối số hàm không chính xác

Python tự động thêm gợi ý loại

Truyền từ điển cho hàm foo() thay vì danh sách

Gán sai loại giá trị cho khóa trong loại Callable0

Python tự động thêm gợi ý loại

Cung cấp giá trị của Callable1 là Callable2

Callable3

Sử dụng sai khóa trong loại Callable0

Python tự động thêm gợi ý loại

Gán các phím như được chỉ định trong định nghĩa loại

Callable3

Sử dụng sai chức năng trang trí. PyCharm xác thực các loại chức năng được trang trí dựa trên các loại trình trang trí của chúng

Python tự động thêm gợi ý loại

Sửa đổi trình trang trí hoặc câu lệnh sử dụng hàm trả về theo yêu cầu

Bạn có thể thêm nhận xét Callable6 hoặc Callable7 để chặn cảnh báo xác thực loại hoặc bỏ qua câu lệnh nhập bị thiếu

Python tự động thêm gợi ý loại

sơ khai Python

Bạn có thể sử dụng tệp sơ khai Python để chỉ định gợi ý loại bằng cú pháp Python 3. Những gợi ý đó sẽ có sẵn trong các tệp Python của bạn bất kể phiên bản Python nào được sử dụng trong trình thông dịch

Trong ví dụ sau, hãy nhập gợi ý cho Callable8 từ tệp sơ khai ( stub. pyi ) có sẵn trong tệp Python ( sơ khai. py ).

Nếu bạn đang sử dụng gói phát hiện thấy tương tự sơ khai, thông báo sau sẽ xuất hiện

Python tự động thêm gợi ý loại

Bạn có thể cài đặt gói sơ khai, bỏ qua thông báo này và tiếp tục làm việc với gói hiện được cài đặt hoặc tắt loại kiểm tra này trong dự án Cài đặt/Tùy chọn.

Khi bạn chọn cài đặt gói, PyCharm sẽ cố gắng cài đặt phiên bản mới nhất hiện có của gói sơ khai. Nếu nó không tương thích với gói non-stub đang sử dụng, quá trình cài đặt sẽ bị chấm dứt

Bạn có thể chỉ định một phiên bản cụ thể của gói sẽ được cài đặt trong hộp thoại Gói khả dụng .

Sử dụng Typeshed

Typeshed là một tập hợp các tệp có chú thích kiểu cho thư viện Python tiêu chuẩn và các gói khác nhau. Sơ khai được đánh máy cung cấp các định nghĩa cho các lớp, hàm và mô-đun Python được xác định bằng gợi ý kiểu. PyCharm sử dụng thông tin này để hoàn thành mã tốt hơn, kiểm tra và các tính năng hiểu biết mã khác