Hướng dẫn how do you call one script from another script in python? - làm thế nào để bạn gọi một tập lệnh từ một tập lệnh khác trong python?
Tôi có một tập lệnh có tên 2 không có trong một mô -đun. Nó chỉ có mã nên thực thi khi bản thân tập lệnh được chạy. Không có chức năng, lớp, phương thức, v.v. Tôi có một tập lệnh khác chạy như một dịch vụ. Tôi muốn gọi 2 từ tập lệnh đang chạy dưới dạng dịch vụ. Show Ví dụ: Tệp 2: 2:
Tệp 5: 5:
Tôi biết một phương pháp đang mở tệp, đọc nội dung và về cơ bản đánh giá nó. Tôi cho rằng có một cách tốt hơn để làm điều này. Hoặc ít nhất tôi hy vọng như vậy.
Martineau Huy hiệu vàng 116K2525 gold badges160 silver badges285 bronze badges hỏi ngày 27 tháng 7 năm 2009 lúc 6:52Jul 27, 2009 at 6:52
Josh Smeatonjosh SmeatonJosh Smeaton 47K24 Huy hiệu vàng127 Huy hiệu bạc164 Huy hiệu đồng24 gold badges127 silver badges164 bronze badges 3 Cách thông thường để làm điều này là một cái gì đó như sau đây. test1.py
Service.py
Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:12Jul 27, 2009 at 7:12
6 Điều này có thể xảy ra trong Python 2 bằng cách sử dụng
Xem tài liệu để xử lý các không gian tên, nếu quan trọng trong trường hợp của bạn. Trong Python 3, điều này có thể sử dụng (nhờ @Fantastory)
Tuy nhiên, bạn nên xem xét sử dụng một cách tiếp cận khác; Ý tưởng của bạn (từ những gì tôi có thể thấy) trông không sạch sẽ lắm.
Woodsy 3.0572 Huy hiệu vàng27 Huy hiệu bạc48 Huy hiệu đồng2 gold badges27 silver badges48 bronze badges Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:03Jul 27, 2009 at 7:03
Balpha ♦ Balpha♦balpha 48.9K17 Huy hiệu vàng112 Huy hiệu bạc129 Huy hiệu đồng17 gold badges112 silver badges129 bronze badges 7 Cách khác: Tệp Test1.py:
File Service.py:
Ưu điểm của phương pháp này là bạn không phải chỉnh sửa tập lệnh Python hiện có để đặt tất cả mã của nó vào chương trình con. Tài liệu: Python 2, Python 3
Jacktose 6707 Huy hiệu bạc21 Huy hiệu Đồng7 silver badges21 bronze badges Đã trả lời ngày 27 tháng 6 năm 2012 lúc 16:01Jun 27, 2012 at 16:01
Dick Goodwindick GoodwinDick Goodwin 1.1091 Huy hiệu vàng7 Huy hiệu bạc2 Huy hiệu đồng1 gold badge7 silver badges2 bronze badges 11
Sử dụng hệ điều hành, bạn có thể thực hiện các cuộc gọi trực tiếp đến thiết bị đầu cuối của bạn. Nếu bạn muốn được cụ thể hơn nữa, bạn có thể kết hợp chuỗi đầu vào của mình với các biến cục bộ, tức là.
Đã trả lời ngày 5 tháng 12 năm 2016 lúc 8:07Dec 5, 2016 at 8:07
Alex Mapleyalex MapleyAlex Mapley 6636 Huy hiệu bạc11 Huy hiệu đồng6 silver badges11 bronze badges 2 Nếu bạn muốn Test1.py vẫn có thể thực thi với chức năng giống như khi nó được gọi là Inside Service.py, thì hãy làm một cái gì đó như: test1.py 0service.py 1Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:11Jul 27, 2009 at 7:11
2 Tôi thích Runpy: 2Đã trả lời ngày 14 tháng 11 năm 2019 lúc 12:56Nov 14, 2019 at 12:56
FlavioflavioFlavio 6821 Huy hiệu vàng9 Huy hiệu bạc23 Huy hiệu đồng1 gold badge9 silver badges23 bronze badges 1 Bạn không nên làm điều này. Thay vào đó, làm: test1.py: 3service.py 4Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:06Jul 27, 2009 at 7:06
Thedzthedzthedz 5.4463 Huy hiệu vàng24 Huy hiệu bạc28 Huy hiệu đồng3 gold badges24 silver badges28 bronze badges 1 Sử dụng 6 cho lần sử dụng đầu tiên - nó sẽ thực thi tập lệnh. Đối với các yêu cầu sau này, hãy coi tập lệnh là một mô -đun đã nhập và gọi phương thức 7.
Một kiểm tra đơn giản của 9 có thể được sử dụng để gọi hành động thích hợp. Để tiếp tục gọi tên tập lệnh dưới dạng chuỗi ( 0), hãy sử dụng tích hợp 'Nhập ()'.import()' builtin. 5
Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:11Jul 27, 2009 at 7:11
Tôi thích Runpy:gimel Đã trả lời ngày 14 tháng 11 năm 2019 lúc 12:5610 gold badges74 silver badges104 bronze badges 3 Flavioflavio 6821 Huy hiệu vàng9 Huy hiệu bạc23 Huy hiệu đồng Bạn không nên làm điều này. Thay vào đó, làm: Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:06Nov 28, 2019 at 3:02
ThedzthedzChao Chen 5.4463 Huy hiệu vàng24 Huy hiệu bạc28 Huy hiệu đồng1 silver badge4 bronze badges Sử dụng 6 cho lần sử dụng đầu tiên - nó sẽ thực thi tập lệnh. Đối với các yêu cầu sau này, hãy coi tập lệnh là một mô -đun đã nhập và gọi phương thức 7.
Khi 8 được thực thi:Jul 27, 2009 at 7:04
Các mô-đun Python Mã được biên dịch lại và mã cấp độ mô-đun được sắp xếp lại, xác định một tập hợp các đối tượng mới được liên kết với các tên trong từ điển mô-đun. Chức năng init của các mô -đun mở rộng không được gọiAnurag Uniyal Một kiểm tra đơn giản của 1 Gimelgimel Huy hiệu vàng 80,5k10 6Như nó đã được đề cập, 1 là một cách hay để chạy các tập lệnh hoặc mô -đun khác từ tập lệnh hiện tại.Nhân tiện, điều khá phổ biến đối với trình theo dõi hoặc trình gỡ lỗi để thực hiện việc này và trong các phương thức như nhập trực tiếp tệp hoặc chạy tệp trong quy trình con thường không hoạt động.Dec 23, 2019 at 20:21
Nó cũng cần chú ý sử dụng 2 để chạy mã. Bạn phải cung cấp 3 thích hợp để tránh nhập lỗi hoặc một số vấn đề khác. Tham khảo 4 để biết chi tiết. 7Đã trả lời ngày 28 tháng 11 năm 2019 lúc 3:02
Chao Chenchao Chen♦ 611 Huy hiệu bạc4 Huy hiệu đồng21 gold badges75 silver badges127 bronze badges Tại sao không chỉ nhập Test1? Mỗi tập lệnh Python là một mô -đun. Một cách tốt hơn là có một chức năng, ví dụ: Main/Run trong Test1.Py, nhập Test1 và Run test1.main (). Hoặc bạn có thể thực thi Test1.py như một quy trình con.Aug 14, 2020 at 3:23
Đã trả lời ngày 27 tháng 7 năm 2009 lúc 7:04 5 6 7Anurag uniyalanurag uniyalMay 27, 2021 at 6:50
0 83.5K39 Huy hiệu vàng170 Huy hiệu bạc216 Huy hiệu đồng 8Quá trình này có phần không chính thống, nhưng sẽ hoạt động trên tất cả các phiên bản Python,Jan 23, 2019 at 11:34
1 Tôi tìm thấy 1 Thư viện tiêu chuẩn thuận tiện nhất. Tại sao? Bạn phải xem xét trường hợp khi lỗi được nêu trong tập lệnh 2 và với 1, bạn có thể xử lý việc này trong mã 5. Cả văn bản Traceback (để ghi lỗi trong tệp nhật ký để điều tra trong tương lai) và đối tượng lỗi (để xử lý lỗi tùy thuộc vào loại của nó): Khi với thư viện 8, tôi không thể quảng bá đối tượng lỗi từ 2 đến 5, chỉ đầu ra theo dõi. Ngoài ra, so sánh với giải pháp "Nhập Test1.py dưới dạng mô -đun", 1 tốt hơn là vì bạn không cần phải gói mã 2 vào hàm 8.Món mã như ví dụ, với mô -đun 9 để nắm bắt văn bản lỗi cuối cùng: 9Đã trả lời ngày 14 tháng 4 lúc 12:26Apr 14 at 12:26
Theo ví dụ đã cho, đây là cách tốt nhất: 0 1Nhưng theo tiêu đề, sử dụng 0 là cách tốt nhất như nhỏ và nó hoạt động. Điều này sẽ thực thi các tập tin được chỉ định. Phiên bản Python của tôi là 3.x +.Đã trả lời ngày 1 tháng 3 lúc 15:47Mar 1 at 15:47
Bạn có thể gọi một kịch bản Python từ một tập lệnh Python không?Dòng đầu tiên của 'Nhập Python_2' trong tập lệnh Python_1, sẽ gọi tập lệnh Python_2 thứ hai. Bất cứ khi nào bạn muốn chạy một tập lệnh Python từ một tập lệnh khác, bạn sẽ cần nhập tên chính xác của tập lệnh Python mà bạn muốn gọi.you'll need to import the exact name of the Python script that you'd like to call.
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ào Thế 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 thế nào để bạn liên kết hai tệp trong 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 .. Làm cách nào để chạy một tệp python với một đối số trong một tệp python khác?Giải pháp: Bốn bước sau đây sẽ giúp bạn chạy một python script.py với các đối số trong mã Python của bạn ... Xác định tập lệnh tệp Python.py truy cập các đối số bằng SYS..... Điền vào các sys biến..... Tải tập lệnh tệp Python.py vào chuỗi Python..... Chuyển chuỗi Python vào hàm EXEC () tích hợp của Python .. |