Hướng dẫn can one python script call another? - một tập lệnh python có thể gọi một tập lệnh khác không?

Làm cách nào để tạo một tệp python để chạy một tệp khác?

Ví dụ tôi có hai tệp .py. Tôi muốn một tệp được chạy, và sau đó để nó chạy tệp .py khác.

wj127

1181 Huy hiệu bạc12 Huy hiệu đồng1 silver badge12 bronze badges

Đã hỏi ngày 2 tháng 11 năm 2011 lúc 1:29Nov 2, 2011 at 1:29

Nathan Tornquistnathan TornquistNathan Tornquist

6.19810 Huy hiệu vàng46 Huy hiệu bạc72 Huy hiệu đồng10 gold badges46 silver badges72 bronze badges

4

Có nhiều hơn một vài cách. Tôi sẽ liệt kê chúng theo thứ tự ưu tiên đảo ngược [tức là, tốt nhất trước, tồi tệ nhất cuối cùng]:

  1. Đối xử với nó như một mô -đun:
    #!/usr/bin/python
    print["hello"]
    
    0. Điều này là tốt vì nó an toàn, nhanh chóng và có thể bảo trì. Mã được sử dụng lại như được cho là phải thực hiện. Hầu hết các thư viện Python chạy bằng nhiều phương thức trải dài trên nhiều tệp. Rất khuyến khích. Lưu ý rằng nếu tệp của bạn được gọi là
    #!/usr/bin/python
    print["hello"]
    
    1,
    #!/usr/bin/python
    print["hello"]
    
    2 của bạn không nên bao gồm tiện ích mở rộng
    #!/usr/bin/python
    print["hello"]
    
    3 ở cuối.
    #!/usr/bin/python
    print["hello"]
    
    0. This is good because it's secure, fast, and maintainable. Code gets reused as it's supposed to be done. Most Python libraries run using multiple methods stretched over lots of files. Highly recommended. Note that if your file is called
    #!/usr/bin/python
    print["hello"]
    
    1, your
    #!/usr/bin/python
    print["hello"]
    
    2 should not include the
    #!/usr/bin/python
    print["hello"]
    
    3 extension at the end.
  2. Lệnh thực thi khét tiếng [và không an toàn]: không an toàn, hacky, thường là câu trả lời sai. Tránh nếu có thể. Insecure, hacky, usually the wrong answer. Avoid where possible.
    • #!/usr/bin/python
      print["hello"]
      
      4 trong Python 2
    • #!/usr/bin/python
      print["hello"]
      
      5 trong Python 3
  3. Spawn một quy trình vỏ:
    #!/usr/bin/python
    print["hello"]
    
    6. Sử dụng khi tuyệt vọng.
    #!/usr/bin/python
    print["hello"]
    
    6. Use when desperate.

Đã trả lời ngày 2 tháng 11 năm 2011 lúc 3:27Nov 2, 2011 at 3:27

20

Nhận một tệp Python để chạy một tệp khác, sử dụng Python 2.7.3 và Ubuntu 12.10:

  1. Đặt cái này vào Main.py:

    #!/usr/bin/python
    import yoursubfile
    
  2. Đặt cái này vào của bạn

    #!/usr/bin/python
    print["hello"]
    
  3. Chạy nó:

    python main.py 
    
  4. Nó in:

    hello
    

Do đó

#!/usr/bin/python
print["hello"]
7 chạy
#!/usr/bin/python
print["hello"]
8

Có 8 cách để trả lời câu hỏi này, một câu trả lời kinh điển hơn ở đây: Làm thế nào để nhập các tệp Python khác?

Jonathan

6.3647 Huy hiệu vàng46 Huy hiệu bạc67 Huy hiệu Đồng7 gold badges46 silver badges67 bronze badges

Đã trả lời ngày 8 tháng 12 năm 2013 lúc 18:14Dec 8, 2013 at 18:14

Eric Leschinskieric LeschinskiEric Leschinski

Phù vàng 140K92 Huy hiệu vàng406 Huy hiệu bạc329 Huy hiệu đồng92 gold badges406 silver badges329 bronze badges

7

Tôi đã sử dụng quy trình phụ

from subprocess import call
call[["python", "your_file.py"]]

Đã trả lời ngày 12 tháng 7 năm 2017 lúc 3:38Jul 12, 2017 at 3:38

6

  • Bạn có thể chạy tệp .py của mình chỉ bằng mã này:
import os 
os.system['python filename.py']

Lưu ý: Đặt tệp vào cùng thư mục của tệp Python chính của bạn.

Đã trả lời ngày 23 tháng 1 năm 2016 lúc 19:46Jan 23, 2016 at 19:46

AyserayserAyser

97511 Huy hiệu bạc15 Huy hiệu Đồng11 silver badges15 bronze badges

4

Bạn có thể sử dụng tập lệnh này:

def run[runfile]:
  with open[runfile,"r"] as rnf:
    exec[rnf.read[]]

Syntax:

run["file.py"]

Đã trả lời ngày 16 tháng 4 năm 2017 lúc 15:26Apr 16, 2017 at 15:26

4

Bạn sẽ coi một trong các tệp như một mô -đun Python và làm cho tệp khác nhập nó [giống như bạn nhập các mô -đun Python tiêu chuẩn]. Sau đó có thể tham khảo các đối tượng [bao gồm các lớp và chức năng] được xác định trong mô -đun đã nhập. Mô -đun cũng có thể chạy bất kỳ mã khởi tạo nào nó cần. Xem //docs.python.org/tutorial/modules.html

Đã trả lời ngày 2 tháng 11 năm 2011 lúc 1:37Nov 2, 2011 at 1:37

Adam Zalcmanadam ZalcmanAdam Zalcman

26.2k4 Huy hiệu vàng69 Huy hiệu bạc91 Huy hiệu Đồng4 gold badges69 silver badges91 bronze badges

Nó có thể được gọi là

#!/usr/bin/python
print["hello"]
9 từ tập lệnh chính như dưới đây:

#!/usr/bin/python
import abc

#!/usr/bin/python
print["hello"]
9 có thể là một cái gì đó như thế này:

print'abc'

Lioness100

8.0506 Huy hiệu vàng15 Huy hiệu bạc47 Huy hiệu đồng6 gold badges15 silver badges47 bronze badges

Đã trả lời ngày 1 tháng 6 năm 2017 lúc 19:19Jun 1, 2017 at 19:19

1

Một kịch bản Python có thể gọi một tập lệnh Python khác không?

Có nhiều cách để làm cho một tệp python chạy khác. 2. Bạn có thể sử dụng lệnh EXEC. thực thi tệp file.py trong trình thông dịch.use the exec command. executes the file.py file in the interpreter.

2 kịch bản Python có thể cùng một lúc không?

Có, bạn có thể chạy nhiều tập lệnh Python cùng một lúc và trong Python, chúng tôi sử dụng đa luồng để chạy nhiều tác phẩm đồng thời. and In python, we use multi-threading to run multiple works simultaneously.

Làm thế nào để bạn gọi một tệp python từ Python?

Để chạy các tập lệnh Python bằng lệnh Python, bạn cần mở một dòng lệnh và nhập từ python, hoặc python3 nếu bạn có cả hai phiên bản, theo sau là đường dẫn đến tập lệnh của bạn, giống như thế này: $ python3 hello.py xin chàoThế giới!Nếu mọi thứ hoạt động ổn, sau khi bạn nhấn Enter, bạn sẽ thấy cụm từ Hello World!open a command-line and type in the word python , or python3 if you have both versions, followed by the path to your script, just like this: $ python3 hello.py Hello World! If everything works okay, after you press Enter , you'll see the phrase Hello World!

Làm cách nào để tham gia hai tệp Python?

Sau đây là các bước để hợp nhất ...
Mở tệp1.TXT và FILE2.txt trong chế độ đọc ..
Mở File3.TXT trong chế độ ghi ..
Đọc dữ liệu từ File1 và thêm nó vào một chuỗi ..
Đọc dữ liệu từ File2 và nối dữ liệu của tệp này đến chuỗi trước ..
Viết dữ liệu từ chuỗi đến File3 ..
Đóng tất cả các tệp ..

Bài Viết Liên Quan

Chủ Đề