Cách chạy chương trình python trong Java

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

2

setIn[java. io. Người đọc]

Đặt java. io. Đầu đọc để sử dụng cho luồng đầu vào tiêu chuẩn

3

setIn[java. io. Dòng đầu vào]

Đặt java. io. InputStream để sử dụng cho luồng đầu vào tiêu chuẩn

4

thiết lập [PyObject]

Đặt đối tượng Python để sử dụng cho luồng đầu ra tiêu chuẩn

5

thiế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

6

thiế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

7

setErr[PyObject]

Đặt đối tượng lỗi Python để sử dụng cho luồng lỗi tiêu chuẩn

8

setErr[java. io. nhà văn

Đặt java. io. Trình ghi để sử dụng cho luồng lỗi tiêu chuẩn

9

setErr[java. io. Dòng đầu ra]

Đặt java. io. OutputStream để sử dụng cho luồng lỗi tiêu chuẩn

10

eval[Chuỗi]

Đánh giá một chuỗi dưới dạng nguồn Python và trả về kết quả

11

eval[PyObject]

Đánh giá một đối tượng mã Python và trả về kết quả

12

exec[Chuỗi]

Thực thi chuỗi nguồn Python trong không gian tên cục bộ

13

ngườ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ộ

14

execfile[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ộ

15

tậ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ộ

16

biê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

17

biê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

18

set[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ộ

19

set[Tên chuỗi, giá trị PyObject]

Đặt biến loại PyObject trong không gian tên cục bộ

20

lấy [Chuỗi]

Lấy giá trị của một biến trong không gian tên cục bộ

21

get[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ưới

Sử dụng lớp
Hello, This is Delftstack.com!The Best Tutorial Site!
0 để chạy tập lệnh Python từ mã Java

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

  1. Sao chép tập lệnh Python của bạn trong một chuỗi trong Java
  2. Tạo một tệp có phần mở rộng
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    3 bằng cách sử dụng
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    4
  3. Viết nội dung từ chuỗi trên vào tệp Python và đóng trình ghi
  4. Tạo một quy trình để chạy tệp Python bằng cách sử dụng
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    5
  5. Đọc dữ liệu từ quy trình bằng cách sử dụng
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    6
  6. 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!
7

Hello, 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ày

Sử dụng lớp
Hello, This is Delftstack.com!The Best Tutorial Site!
1 để chạy tập lệnh Python từ mã Java

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 Java

Là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

  1. Đảm bảo Python được cài đặt trên hệ thống của bạn
  2. Tạo tập lệnh Python có phần mở rộng
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    3 hoặc chọn một tập lệnh nếu bạn đã có
  3. Tạo một thể hiện của lớp
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    1 và chuyển
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    04 và đường dẫn tập lệnh làm tham số
  4. Tạo một quy trình để chạy
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    1 bằng phương pháp
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    06;
  5. Tạo một
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    6 để lấy đầu ra của tập lệnh Python từ quy trình
  6. 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!
5

Sử 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!
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

  1. Tải xuống
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    45 từ đây
  2. Thêm
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    42 vào bản dựng của bạn
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    43
  3. Tới dự án
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    48 ->
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    49
  4. Thêm bình ngoài vào
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    50 của bạn
  5. Chọn
    Hello, This is Delftstack.com!The Best Tutorial Site!
    
    42 và nhấp vào Áp dụng và Đóng

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 Python

Dướ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 Java

MethodDescription
Hello, 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 đã cho

Bâ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!
89

Hello, This is Delftstack.com!The Best Tutorial Site!
8

Việ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

Tôi có thể chạy mã Python trong Java không?

javabridge. CPython, có thể dùng để thực thi mã Python . Lớp này có thể được sử dụng trong mã Java được gọi từ trình thông dịch Python hoặc nó có thể được sử dụng trong Java để chạy Python nhúng trong Java. Lớp CPython liên kết trình thông dịch Python với JVM và cung cấp khả năng thực thi các tập lệnh Python.

Làm cách nào để tích hợp mã Python với Java?

Dưới đây là danh sách nhanh một số công cụ tích hợp Python + Java được xếp hạng hàng đầu. .
Jython – Python được triển khai trong Java
JPype – Cho phép Python chạy các lệnh java
Jepp – Python nhúng Java
JCC – trình tạo mã C++ để gọi Java từ C++/Python

Làm cách nào để chạy tập lệnh Python từ Java Eclipse?

Chạy Python từ bên trong Eclipse . Nhập một số mã Python [ví dụ:. print 2+2 ], sau đó nhấp chuột phải vào tệp Python mà bạn đã tạo và chọn Run As >> Python run . Bạn sẽ thấy đầu ra của mã Python trong bảng điều khiển ở cuối cửa sổ Eclipse.

Làm cách nào để sử dụng Jython trong Java?

4. 1 Gọi Jython từ Java .
Tạo một đối tượng thông dịch viên Jython
Chèn [đặt] giá trị vào trình thông dịch được nhúng của bạn, nếu cần
Sử dụng trình thông dịch đó để. Chạy một số dòng mã để nhập và sử dụng mô-đun Jython của bạn hoặc. .
Truy xuất các giá trị từ trình thông dịch được nhúng của bạn, nếu cần

Chủ Đề