Hướng dẫn how do i integrate two python scripts? - làm cách nào để tích hợp hai tập lệnh python?

Tôi có hai kịch bản Python mà tôi muốn kết hợp và chạy như một chương trình. Nhưng tôi không chắc chắn về chính xác những gì tôi cần thay đổi để thực hiện cho hai tập lệnh làm việc cùng nhau.

Đây là mã đầu tiên của tôi:

import random
with open['filename.txt'] as fin:
   lines = fin.readlines[]
   random.shuffle[lines]
   for i, line in enumerate[lines]:
      if i >= 0 and i < 6800:
          print[line, end='']

Và đây là thứ hai:

import csv
with open ["Randomfile.txt"] as f:
   dict1 = {}
   r = csv.reader[f,delimiter="\t"]
   for row in r:

      a, b, v = row
      dict1.setdefault[[a,b],[]].append[v]

   #for key in dict1:
      #print[key[0]]
      #print[key[1]]
      #print[d[key][0]]]

with open ["filename2.txt"] as f:
   dict2 = {}
   r = csv.reader[f,delimiter="\t"]
   for row in r:

      a, b, v = row
      dict2.setdefault[[a,b],[]].append[v]

  #for key in dict2:
     #print[key[0]]

   count = 0
   for key1 in dict1:
      for key2 in dict2:
         if [key1[0] == key2[0]] and abs[[float[key1[1].split[" "][0]]] - [float[key2[1].split[" "][0]]]] < 0:
           count += 1

print[count]

Những gì tôi thường làm là sử dụng mã đầu tiên, tôi trích xuất một tập hợp các phần tử ngẫu nhiên. Sau đó, tôi lưu nó dưới dạng tệp văn bản, mở nó trong mã thứ hai và so sánh nó với tệp khác của tôi để nhận kết quả của tôi.

Tuy nhiên, về cơ bản tôi muốn bỏ qua quá trình tiết kiệm và mở lại. Tôi muốn đặt tập lệnh đầu tiên của mình trong lần thứ hai và thay đổi mã để làm cho nó chạy như một. Vì vậy, khi các phần tử của tôi được trích xuất, sau đó chúng được tự động so sánh với tệp khác của tôi.

Tôi đã đọc và xem video về việc sử dụng

 if __name__==__main__

Nhưng tôi không thực sự hiểu chức năng của nó. Vì vậy, nếu đó là giải pháp, tôi rất thích hiểu cách sử dụng nó để giải quyết vấn đề của tôi.

Vui lòng giúp tôi tìm ra cách tôi có thể kết hợp hai tập lệnh, thay đổi cả hai để có mã chạy như một. Tôi sẵn lòng hợp tác và làm rõ bất cứ điều gì.

[Chỉnh sửa] Các tập tin của tôi ở định dạng sau. My files are in the following format.

Một ví dụ về tệp ngẫu nhiên của tôi:

  3 10045   0.120559958
  4 157465  0.590642951
  1 222471  0.947959795
  3 222473  0.083341617
  2 222541  0.054014337
  5 222588  0.060296547

Một ví dụ về tệp khác của tôi [mà tôi đang so sánh với tệp ngẫu nhiên của mình]:

  2 143521109   4.57E-08
  1 201466556   5.57E-08
  1 11566373    8.43E-08
  1 143627370   8.61E-08
  6 98624499    1.02E-07

Liên kết các tệp Python với nhau là một cách rất tốt để sắp xếp mã của bạn và không kết thúc với hàng trăm dòng lớp và chức năng.

Trong bài viết ngắn này, mục tiêu của tôi sẽ chỉ cho bạn cách sử dụng các hàm bạn đã tạo trong một tệp .py trong một tệp khác mà không phải viết lại chúng.

Hãy để tạo ra một tệp script1.py sẽ chứa một hàm gọi là functionOne.

Như bạn có thể thấy, hàm này yêu cầu một số nguyên sẽ được chạy theo phương trình, nếu biến lớn hơn 10 in x, khác in y.

Bây giờ, hãy để Lôi tạo một tệp thứ hai được gọi là script2.pypy

Bây giờ, khi chúng tôi chạy kịch bản của chúng tôi bên trong thiết bị đầu cuối của chúng tôi, đây là kết quả:

Và đây là nó. Mặc dù không đề cập đến hàm functionOne, script2.py của chúng tôi có thể tìm thấy hàm trong script1.py và thực thi nó.

Điều duy nhất bạn phải làm là viết:

from Script1 import *

Về cơ bản, về cơ bản là yêu cầu tệp đích của đích để tìm một tệp có tên là script1.py và nhập tất cả các chức năng có bên trong tài liệu.

Trong trường hợp bạn không muốn nhập tất cả các chức năng có trong tài liệu nguồn của mình, bạn cũng có thể viết điều này:

from Script1 import functionOne

Điều này đảm bảo rằng bạn chỉ nhập chức năng mà bạn dự định thực sự sử dụng và giữ cho mã của bạn sạch sẽ và dễ hiểu.

Như tôi đã nói, đây là một bài viết ngắn nhưng tôi tin rằng nó sẽ hữu ích :]. Như mọi khi, nếu bạn có bất kỳ câu hỏi nào, tôi sẽ trả lời bất kỳ câu hỏi nào bạn có thể có trong phần bình luận bên dưới vì vậy hãy thoải mái bắn!

Cho đến lần sau,

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

Có, hãy kiểm tra Python Multi Processing.or Multi Lording [bạn phải tùy chỉnh tập lệnh khác và nhập nó vào tập lệnh chính để làm cho nó chạy từ tập lệnh chính].Hoặc bạn cũng có thể làm điều này: nhập hệ điều hành. Or multi threading [you have to customize the other script and import it in the main script to make it run from the parent script]. Or you can also do this: import os.

Hai tập lệnh Python có thể đọc cùng một tệp không?

Về mặt kỹ thuật, các tập lệnh sẽ không chạy cùng một lúc, vì vậy sẽ không có vấn đề gì xảy ra, trừ khi tất nhiên bạn chạy chúng từ các chủ đề riêng biệt, trong trường hợp đó tôi nghĩ rằng nó ổn.no issue will occur, unless of course you run them from separate threads, in which case I think it's fine.

Bài Viết Liên Quan

Chủ Đề