Tải xuống jython-độc lập-2. 7. 0. jar - Để nhúng Jython vào các ứng dụng Java từ trang tải xuống chính thức của họ. http. //www. jython. tổ chức/tải xuống. html và đưa tệp jar này vào biến môi trường Java CLASSPATH
Thư viện này chứa lớp PythonInterpreter. Sử dụng đối tượng của lớp này, bất kỳ tập lệnh Python nào cũng có thể được thực thi bằng phương thức execfile[]. PythonInterpreter cho phép bạn sử dụng trực tiếp PyObjects. Tất cả các đối tượng được biết đến với hệ thống thời gian chạy Jython được biểu diễn bằng một thể hiện của lớp PyObject hoặc một trong các lớp con của nó
Lớp PythonInterpreter có một số phương thức được sử dụng thường xuyên, được giải thích trong bảng dưới đây
Sr. Không. Phương pháp và Mô tảsetIn[PyObject]
Đặt đối tượng Python để sử dụng cho luồng đầu vào tiêu chuẩn
2setIn[java. io. Người đọc]
Đặt java. io. Đầu đọc để sử dụng cho luồng đầu vào tiêu chuẩn
3setIn[java. io. Dòng đầu vào]
Đặt java. io. InputStream để sử dụng cho luồng đầu vào tiêu chuẩn
4thiết lập [PyObject]
Đặt đối tượng Python để sử dụng cho luồng đầu ra tiêu chuẩn
5thiết lập [java. io. Nhà văn]
đặt java. io. Trình ghi để sử dụng cho luồng đầu ra tiêu chuẩn
6thiết lập [java, io. Dòng đầu ra]
đặt java. io. OutputStream để sử dụng cho luồng đầu ra tiêu chuẩn
7setErr[PyObject]
Đặt đối tượng lỗi Python để sử dụng cho luồng lỗi tiêu chuẩn
8setErr[java. io. nhà văn
Đặt java. io. Trình ghi để sử dụng cho luồng lỗi tiêu chuẩn
9setErr[java. io. Dòng đầu ra]
Đặt java. io. OutputStream để sử dụng cho luồng lỗi tiêu chuẩn
10eval[Chuỗi]
Đánh giá một chuỗi dưới dạng nguồn Python và trả về kết quả
11eval[PyObject]
Đánh giá một đối tượng mã Python và trả về kết quả
12exec[Chuỗi]
Thực thi chuỗi nguồn Python trong không gian tên cục bộ
13người thực hiện [PyObject]
Thực thi một đối tượng mã Python trong không gian tên cục bộ
14execfile[Tên tệp chuỗi]
Thực thi một tệp nguồn Python trong không gian tên cục bộ
15tập tin thực thi [java. io. Dòng đầu vào]
Thực thi luồng đầu vào của nguồn Python trong không gian tên cục bộ
16biên dịch [Chuỗi]
Biên dịch chuỗi nguồn Python dưới dạng biểu thức hoặc mô-đun
17biên dịch [tập lệnh, tên tệp]
Biên dịch tập lệnh nguồn Python dưới dạng biểu thức hoặc mô-đun
18set[Tên chuỗi, Giá trị đối tượng]
Đặt một biến loại Đối tượng trong không gian tên cục bộ
19set[Tên chuỗi, giá trị PyObject]
Đặt biến loại PyObject trong không gian tên cục bộ
20lấy [Chuỗi]
Lấy giá trị của một biến trong không gian tên cục bộ
21get[Tên chuỗi, Classjavaclass
Lấy giá trị của một biến trong không gian tên cục bộ. Giá trị sẽ được trả về dưới dạng một thể hiện của lớp Java đã cho
Khối mã sau đây là một chương trình Java có tập lệnh Jython nhúng “xin chào. py”. sử dụng phương thức execfile[] của đối tượng PythonInterpreter. Nó cũng cho thấy cách một biến Python có thể được đặt hoặc đọc bằng các phương thức set[] và get[]
Đôi khi, chúng ta phải gọi các tập lệnh Python từ mã Java của mình để đáp ứng các yêu cầu của dự án. Chúng ta có thể làm điều đó bằng cách sử dụng
Hello, This is Delftstack.com!The Best Tutorial Site!
0, Hello, This is Delftstack.com!The Best Tutorial Site!
1 và Hello, This is Delftstack.com!The Best Tutorial Site!
0. Hãy xem cách chúng ta có thể sử dụng từng cái bên dướiSử dụng lớp Hello, This is Delftstack.com!The Best Tutorial Site!
0 để chạy tập lệnh Python từ mã Java
Hello, This is Delftstack.com!The Best Tutorial Site!
Chúng ta có thể sử dụng lớp Java
Hello, This is Delftstack.com!The Best Tutorial Site!
0 để chạy các tập lệnh Python từ mã Java của chúng ta. Hãy thử tạo một tập lệnh Python và chạy nó bằng mã Java. Làm theo các bước dưới đây- Sao chép tập lệnh Python của bạn trong một chuỗi trong Java
- Tạo một tệp có phần mở rộng
3 bằng cách sử dụngHello, This is Delftstack.com!The Best Tutorial Site!
4Hello, This is Delftstack.com!The Best Tutorial Site!
- Viết nội dung từ chuỗi trên vào tệp Python và đóng trình ghi
- Tạo một quy trình để chạy tệp Python bằng cách sử dụng
5Hello, This is Delftstack.com!The Best Tutorial Site!
- Đọc dữ liệu từ quy trình bằng cách sử dụng
6Hello, This is Delftstack.com!The Best Tutorial Site!
- Sử dụng hoặc in dữ liệu lấy được khi chạy mã Python
Bây giờ hãy thực hiện các bước trên trong mã Java
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.InputStreamReader;
public class Example {
public static void main[String a[]]{
try{
String Python_Script =
"print[\"Hello, This is Delftstack.com!The Best Tutorial Site!\"]\n";
BufferedWriter Buffered_Writer = new BufferedWriter[
new FileWriter["DemoPythonFile.py"]];
Buffered_Writer.write[Python_Script];
Buffered_Writer.close[];
Process Demo_Process = Runtime.getRuntime[].exec["python DemoPythonFile.py"];
BufferedReader Buffered_Reader = new BufferedReader[
new InputStreamReader[
Demo_Process.getInputStream[]
]];
}catch[Exception e]{
e.printStackTrace[];
}
}
}
Đoạn mã trên cố gắng tạo và chạy tập lệnh Python trong Java và viết chuỗi sau vào tệp
Hello, This is Delftstack.com!The Best Tutorial Site!
7Hello, This is Delftstack.com!The Best Tutorial Site!
Chúng ta nên đề cập rằng không cần thiết phải tạo một tập lệnh Python rồi chạy nó;
Lưu ý rằng bạn có thể nhận được cảnh báo về việc hàm
Hello, This is Delftstack.com!The Best Tutorial Site!
5 không được dùng nữa, điều đó có nghĩa là Java có thể loại bỏ hàm này trong các bản phát hành sau nàySử dụng lớp Hello, This is Delftstack.com!The Best Tutorial Site!
1 để chạy tập lệnh Python từ mã Java
Hello, This is Delftstack.com!The Best Tutorial Site!
Lớp
Hello, This is Delftstack.com!The Best Tutorial Site!
1 trong Java được sử dụng để tạo quy trình Hệ điều hành. Chúng ta cũng có thể sử dụng lớp này để chạy các tập lệnh Python trong JavaLàm theo các bước để chạy tập lệnh Python trong Java bằng Lớp
Hello, This is Delftstack.com!The Best Tutorial Site!
1- Đảm bảo Python được cài đặt trên hệ thống của bạn
- Tạo tập lệnh Python có phần mở rộng
3 hoặc chọn một tập lệnh nếu bạn đã cóHello, This is Delftstack.com!The Best Tutorial Site!
- Tạo một thể hiện của lớp
1 và chuyểnHello, This is Delftstack.com!The Best Tutorial Site!
04 và đường dẫn tập lệnh làm tham sốHello, This is Delftstack.com!The Best Tutorial Site!
- Tạo một quy trình để chạy
1 bằng phương phápHello, This is Delftstack.com!The Best Tutorial Site!
06;Hello, This is Delftstack.com!The Best Tutorial Site!
- Tạo một
6 để lấy đầu ra của tập lệnh Python từ quy trìnhHello, This is Delftstack.com!The Best Tutorial Site!
- In đầu ra
Hãy triển khai ví dụ trong Java. Tập lệnh Python của chúng tôi là
Hello, This is Delftstack.com!The Best Tutorial Site!
0Đây là việc triển khai Java
Hello, This is Delftstack.com!The Best Tutorial Site!
4Đoạn mã trên sẽ thực thi tập lệnh Python đã cho bằng Java và in nó trên bàn điều khiển. Xem đầu ra
Hello, This is Delftstack.com!The Best Tutorial Site!
5Sử dụng Hello, This is Delftstack.com!The Best Tutorial Site!
0 để chạy mã Python và Java cùng nhau
Hello, This is Delftstack.com!The Best Tutorial Site!
Hello, This is Delftstack.com!The Best Tutorial Site!
0 là một dự án cung cấp triển khai tập lệnh Python trong mã Java. Hello, This is Delftstack.com!The Best Tutorial Site!
0 chạy mã Python và Java với nhauĐể sử dụng
Hello, This is Delftstack.com!The Best Tutorial Site!
0 trong Java, chúng tôi chỉ cần tải xuống Hello, This is Delftstack.com!The Best Tutorial Site!
42 hoặc bất kỳ phiên bản mới nhất nào và thêm nó vào bản dựng dự án của bạn Hello, This is Delftstack.com!The Best Tutorial Site!
43. Thực hiện theo các bước bên dưới để thêm Hello, This is Delftstack.com!The Best Tutorial Site!
0 vào môi trường Java của bạn- Tải xuống
45 từ đâyHello, This is Delftstack.com!The Best Tutorial Site!
- Thêm
42 vào bản dựng của bạnHello, This is Delftstack.com!The Best Tutorial Site!
43Hello, This is Delftstack.com!The Best Tutorial Site!
- Tới dự án
48 ->Hello, This is Delftstack.com!The Best Tutorial Site!
49Hello, This is Delftstack.com!The Best Tutorial Site!
- Thêm bình ngoài vào
50 của bạnHello, This is Delftstack.com!The Best Tutorial Site!
- Chọn
42 và nhấp vào Áp dụng và ĐóngHello, This is Delftstack.com!The Best Tutorial Site!
Khi
Hello, This is Delftstack.com!The Best Tutorial Site!
0 được bao gồm trong môi trường Java của chúng tôi, giờ đây chúng tôi có thể chạy các tập lệnh Python trong Java. Lớp Hello, This is Delftstack.com!The Best Tutorial Site!
53 là từ Hello, This is Delftstack.com!The Best Tutorial Site!
0 để thực thi các tập lệnh và thao tác PythonDưới đây là các phương pháp khác nhau từ
Hello, This is Delftstack.com!The Best Tutorial Site!
0 để chạy Python trong JavaMethodDescriptionHello, This is Delftstack.com!The Best Tutorial Site!
56Được sử dụng để đặt đối tượng Python cho luồng đầu vào tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
57Được sử dụng để đặt Trình đọc Java IO cho luồng đầu vào tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
58Được sử dụng để đặt Java IO InputStream cho luồng đầu vào tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
59Được sử dụng để đặt đối tượng Python cho luồng đầu ra tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
80Được sử dụng để đặt trình ghi Java IO cho luồng đầu ra tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
81Được sử dụng để đặt Luồng đầu ra Java IO cho luồng đầu ra tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
82Được sử dụng để đặt trình ghi Java IO cho luồng lỗi tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
83Được sử dụng để đặt đối tượng Python cho luồng lỗi tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
84Được sử dụng để đặt Luồng đầu ra Java IO cho luồng lỗi tiêu chuẩn. Hello, This is Delftstack.com!The Best Tutorial Site!
85Được sử dụng để đánh giá một chuỗi Python cho Java. Hello, This is Delftstack.com!The Best Tutorial Site!
86Được sử dụng để đánh giá một đối tượng Python cho Java. Hello, This is Delftstack.com!The Best Tutorial Site!
87Được sử dụng để thực thi chuỗi Python trong không gian tên cục bộ. Hello, This is Delftstack.com!The Best Tutorial Site!
88Được sử dụng để thực thi một đối tượng Python trong không gian tên cục bộ. Hello, This is Delftstack.com!The Best Tutorial Site!
89Được sử dụng để thực thi tệp Python trong không gian tên cục bộ. Hello, This is Delftstack.com!The Best Tutorial Site!
80Được sử dụng để thực thi một InputStream Python trong không gian tên cục bộ. Hello, This is Delftstack.com!The Best Tutorial Site!
81Được sử dụng để biên dịch chuỗi Python dưới dạng mô-đun biểu thức. Hello, This is Delftstack.com!The Best Tutorial Site!
82Được sử dụng để biên dịch tập lệnh Python dưới dạng mô-đun biểu thức. Hello, This is Delftstack.com!The Best Tutorial Site!
83Được sử dụng để đặt một biến kiểu đối tượng. Hello, This is Delftstack.com!The Best Tutorial Site!
84Được sử dụng để đặt biến kiểu Hello, This is Delftstack.com!The Best Tutorial Site!
85. Hello, This is Delftstack.com!The Best Tutorial Site!
86Được sử dụng để lấy giá trị của một biến. Hello, This is Delftstack.com!The Best Tutorial Site!
87Được sử dụng để lấy giá trị của một biến và trả về nó dưới dạng thể hiện của một lớp Java đã choBây giờ, chúng tôi biết về các phương pháp từ dự án
Hello, This is Delftstack.com!The Best Tutorial Site!
0. Hãy thử sử dụng một số trong số chúng trong ví dụ của chúng tôi. Tệp Hello, This is Delftstack.com!The Best Tutorial Site!
89Hello, This is Delftstack.com!The Best Tutorial Site!
8Việc triển khai Jython
Hello, This is Delftstack.com!The Best Tutorial Site!
8Đoạn mã trên sẽ thực thi tập lệnh Python từ một tệp và chạy một số thao tác Python bằng các phương thức từ bảng trên. Xem đầu ra