Trả lời câu hỏi
Câu hỏi
Làm cách nào để định cấu hình môi trường Python để tự động hoàn thành trong các phiên tương tác?
Câu trả lời
Tính năng tự động hoàn thành có sẵn trong cả giao diện dòng lệnh Python [Python] và giao diện dòng lệnh Python. Tính năng này có thể cung cấp cho bạn gợi ý và tiết kiệm thời gian khi bạn không chắc chắn về cách đánh vần chính xác của các lớp, phương thức và thuộc tính. Đây là một tính năng rất thuận tiện trong các phiên CPLEX tương tác, bởi vì bạn không phải ghi nhớ tên chính xác của các phương thức và thuộc tính.
Định cấu hình tự động hoàn thành trong GUI không nhàn rỗi Python
- Trong Idle 1.1, bạn có thể sử dụng kết hợp chính của 'alt' và '/' để gọi tính năng tự động mở rộng tích hợp. Ngoài ra, bạn có thể chọn "từ mở rộng" trong menu chỉnh sửa chính.
- Trong Idle 1.2, bạn có thể sử dụng kết hợp chính của 'Ctrl' và 'Space' để gọi tính năng tự động hoàn thành tích hợp. . để đạt được như vậy cũng như vậy.
Lưu ý rằng trên nền tảng Windows, IDLE thường được bao gồm trong trình cài đặt Python. Trên Linux, IDLE có thể không được cài đặt theo mặc định, trong trường hợp đó bạn cần tải xuống và cài đặt gói Python-Tools để có được Idle.
Định cấu hình tự động hoàn thành trong giao diện dòng lệnh Python
Để kích hoạt tính năng tự động hoàn thành trong giao diện dòng lệnh Python, bạn cần có các gói Readline và RLCompleter trong cài đặt Python của bạn. Tùy thuộc vào nền tảng cơ bản, các gói này có thể hoặc có thể có mặt. Trong mọi trường hợp, hãy nhập các loại sau trong giao diện dòng lệnh:
Nếu bạn thấy các lỗi như:
import rlcompleter
import readline
thì bạn sẽ cần cài đặt gói bị thiếu trước. Đối với hầu hết người dùng, gói thiếu duy nhất có thể sẽ là Readline. Tuy nhiên, bạn có thể sử dụng các gói khác, chẳng hạn như pyreadline, để đạt được chức năng tương tự. Sau khi nhập các gói [RLCompleter và Readline] hoàn thành mà không có bất kỳ loại lỗi nào sau:
ImportError: No module named XXX
Bây giờ bạn nên bật tự động hoàn thành. Lưu ý rằng bạn có thể đặt các dòng trên vào tệp tập lệnh Python và trỏ biến môi trường PythonStartup vào tệp, sao cho các dòng đó sẽ được thực thi tự động mỗi lần giao diện dòng lệnh Python bắt đầu.
readline.parse_and_bind["tab: complete"]
import rlcompleter
import readline
If you see errors like:
ImportError: No module named XXX
then you will need to install missing package first. For most users, the
only possible missing package would be readline. However, you can use other packages, such as pyreadline, to achieve similar functionality.
Once importing the packages [rlcompleter and readline] completes without any errors type the following:
readline.parse_and_bind["tab: complete"]
You should now have auto-completion enabled. Note that you can put the above lines in a Python script file and point the environment variable PYTHONSTARTUP to the file, such that those lines will be executed automatically each time
Python command line interface starts.
Tính năng tự động hoàn thành ở đây tập trung vào tự động hoàn thành các lớp, phương thức và thuộc tính. Nếu bạn cần các tính năng hoàn thành tự động mở rộng hơn, chẳng hạn như tự động hoàn thành tên tệp, bạn có thể xem xét gói Python ipython, có thể được sử dụng như vỏ bash.
. \/o tps "}," thành phần ":" chung "," nền tảng ": [{" code ":" pf016 "," nhãn ":" linux "}, {" code ":" pf022 "," nhãn " : "OS X"}, {"Code": "PF033", "Nhãn": "Windows"}], "Phiên bản": "12.1; 12.2", "Phiên bản": "" "Mã": "lob10", "nhãn": "Dữ liệu và AI"}}, {"sản phẩm": {"mã": "SSSA5P", "Nhãn": "IBM ILOG CPLEX Optimization Studio"}, "Đơn vị kinh doanh " ":" Aix "}, {" code ":" pf010 "," nhãn ":" hp-ux "}, {" code ":" pf016 "," nhãn ":" linux "}, {" code ": "PF027", "Nhãn": "Solaris"}, {"Code": "PF033", "Nhãn": "Windows"}, {"Code": "PF017", "Nhãn": "Mac OS"}] , "Phiên bản": "12.2", "Phiên bản": "Tất cả các phiên bản", "Dòng doanh nghiệp": {"Code": "lob10", "Nhãn": "Dữ liệu và AI"}}]]
Idle đang rất tinh ranh khi nó thực sự sẽ hiển thị một menu tự động hoàn thành. Đến cuối, nó đã không hoạt động, hoặc cụ thể hơn, chỉ hoạt động trong một phiên tương tác.
Tôi đã sử dụng các khối mã cho C và đã thực sự quen với các tính năng tự động hoàn thành rất đẹp, vì vậy có một chút bực bội khi không có chúng-đặc biệt là trong khi cố gắng học một công việc khung mới và lớp nào được liên kết với Phương pháp, v.v.
Có một bản sửa lỗi dễ dàng để có được tự động hoàn thành nhàn rỗi hoạt động trở lại không? Tôi đang sử dụng Python phiên bản 2.7.
Có lẽ có một biên tập viên đơn giản mà tôi nên xem xét? Tôi đã thử VIM, một chút quá nặng đối với nhu cầu đơn giản của tôi, Ninja, mà tôi không thể làm việc cho bất cứ điều gì và văn bản siêu phàm 2, mà tôi không thể chơi Wxpython của mình để chơi. Một lựa chọn tốt đẹp sẽ là gì? Bất cứ điều gì tương tự với các khối mã sẽ rất tuyệt, mặc dù, tôi hoàn toàn hài lòng với IDLE nếu nó luôn hoạt động!
Yêu cầu làm rõ: OK, vì vậy có vẻ như tôi có thể có một số thuật ngữ của tôi ngược lại. Ví dụ, bằng cách không tương tác, ý tôi là nhấp chuột phải vào tệp Python và chọn "Chỉnh sửa với IDLE". Điều này đưa ra những gì tôi đoán có thể được mô tả như một trình soạn thảo văn bản. Bạn có thể nhập tất cả các bạn mã ở đây. Sau khi sẵn sàng, sau đó bạn nhấn F5 hoặc chọn Run và nó khởi chạy [những gì tôi đã đề cập đến như] thiết bị đầu cuối tương tác. Ở đây, bạn có thể nhập mã, nhấn trả về và ngay lập tức có mã đó được đánh giá.
Câu hỏi của tôi là gì đề cập đến nó trước đây, một phần của Idle nơi bạn chỉnh sửa mã. Đôi khi trong khi gõ, sau a. Nó sẽ hiển thị các phương thức có sẵn hoặc sau một dấu ngoặc đơn mở, nó sẽ đưa ra gợi ý về các giá trị dự kiến. Nhưng điều này là, đôi khi nó làm những điều này, đôi khi nó không.