Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

Tôi đã tạo một tập lệnh Python mà tôi muốn thực thi nhiều lần - cùng một lúc. Làm thế nào để tôi làm điều này?

Tôi đang viết các tập lệnh tự động hóa trong Python (sử dụng selenium crômedriver) và có một tập lệnh truy cập vào một trang web và tạo một tài khoản. Tôi muốn tạo một số loại tệp hàng loạt thực thi tập lệnh này đồng thời số x lần để tôi có thể tạo nhiều hơn một tài khoản cùng một lúc trên trang web này.

Lý tưởng nhất, tôi muốn có một đầu vào khi chương trình bắt đầu rằng bạn muốn tạo bao nhiêu tài khoản, và sau đó đầu vào là có bao nhiêu tập lệnh đồng thời sẽ được chạy. Ví dụ.

import os 
number = input("How many guest users do you want to create? ")
run_test = os.system('python create_guest_user.py')
number = int(number)

# run the 'create_guest_user.py' script 'number' amount of times simultaneously
# (unsure on how to do this part)

Tôi không chắc chắn về các phương pháp cần thiết để thực hiện quá trình này.

Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

Squashman

13.4K5 Huy hiệu vàng26 Huy hiệu bạc36 Huy hiệu đồng5 gold badges26 silver badges36 bronze badges

hỏi ngày 15 tháng 2 năm 2019 lúc 15:05Feb 15, 2019 at 15:05

Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

3

Tôi hiểu rằng Python theo mặc định sử dụng khóa phiên dịch toàn cầu (GIL), điều này hạn chế số lượng quy trình có thể chạy cùng một lúc.

Nếu máy bạn sẽ chạy tập lệnh này có nhiều lõi hơn bạn nên xem thư viện đa xử lý vì điều này có thể được sử dụng để chạy từng tập lệnh trên một lõi khác ... thư viện đa luồng cũng có thể được sử dụng tuy nhiên điều này sẽ chỉ Làm việc nếu trình thông dịch có thể chuyển đổi giữa các quy trình nếu có thời gian nhàn rỗi ...

Đây là một câu trả lời trước đây có thể giúp bạn.

thực hiện tập lệnh python nhiều lần

Ngoài ra, các ý kiến ​​được đưa ra trong câu hỏi của bạn cũng chứa một số ý tưởng và liên kết tốt ...

Bạn có thể chạy nhiều trường hợp của tập lệnh Python từ một shell từ trong chương trình Python mà không cần sử dụng đa luồng/đa xử lý Gil Giới hạn sẽ ảnh hưởng đến những gì bạn đang cố gắng làm.

Đã trả lời ngày 15 tháng 2 năm 2019 lúc 15:14Feb 15, 2019 at 15:14

Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

Mark Smithmark SmithMark Smith

6572 Huy hiệu vàng14 Huy hiệu bạc26 Huy hiệu đồng2 gold badges14 silver badges26 bronze badges

r/Python

Tôi có thể chạy 2 tập lệnh Python cùng một lúc không?8 years ago

Nếu bạn cần phối hợp thực thi và giao tiếp giữa các chương trình này, bạn sẽ cần sử dụng luồng. Nếu các tập lệnh có thể chạy độc lập, bạn có thể chạy chúng theo cách thủ công cùng một lúc từ thiết bị đầu cuối hoặc sử dụng cuộc gọi phụ từ tập lệnh đầu tiên: quy trình con.

Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

Được đăng bởi 8 năm trước

Lưu trữ

Chào mọi người,

Tôi muốn chạy một tập lệnh Python trên một số dữ liệu, cùng một lúc. Mỗi lần chạy hoàn toàn độc lập và hoạt động trên các dữ liệu khác nhau.

Vậy tôi nên sử dụng những gì? Mô -đun đa xử lý hoặc quá trình phụ? Tôi phải chạy 9 công việc và tôi muốn quản lý một hàng đợi để chạy nhiều công việc đồng thời, dựa trên một số bộ xử lý để sử dụng.

Cảm ơn bạn

Hướng dẫn can you run the same python script at the same time? - bạn có thể chạy cùng một tập lệnh python không?

Hỗ trợ tự động hóa Python đơn giản. Nó cho phép bạn tiêu thụ một số lượng lớn các tệp có thể có thời gian xử lý lớn hoặc sử dụng bộ nhớ lớn và thực hiện một chương trình trên tất cả chúng. Tuy nhiên, chương trình này sẽ đảm bảo hơn chỉ các tệp/lệnh 'n' sẽ được thực thi tại bất kỳ thời điểm nào.

Con người tội nghiệp:

cấp độ 1

cấp độ 2

cấp độ 1

Nhưng điều đó sẽ không chạy chúng đồng thời.

for arg
do
    ./my_script.py "$arg" &
done
wait

Điều đó sẽ chạy tập lệnh của bạn một lần cho mỗi đối số, tất cả trong các quy trình riêng biệt, sau đó đợi tất cả chúng kết thúc.

cấp độ 1

Một cái gì đó tôi đã viết nhiều năm trước trong một vài dòng dường như là những gì bạn cần!

https://github.com/easytiger/concurrent/blob/master/concurrent

Hỗ trợ tự động hóa Python đơn giản. Nó cho phép bạn tiêu thụ một số lượng lớn các tệp có thể có thời gian xử lý lớn hoặc sử dụng bộ nhớ lớn và thực hiện một chương trình trên tất cả chúng. Tuy nhiên, chương trình này sẽ đảm bảo hơn chỉ các tệp/lệnh 'n' sẽ được thực thi tại bất kỳ thời điểm nào.

i.e. ./concurrent  "command and args>" 
e.g. ./concurrent 8 "mycommand -e 100 -f %f" *.txt

cấp độ 1

Con người tội nghiệp:

#/bin/sh
for data in data1 data2 data3
do
     my_script.py data [args]
done

cấp độ 2

Nhưng điều đó sẽ không chạy chúng đồng thời.

Tôi có thể chạy cùng một tập lệnh Python cùng một lúc không?

Giải pháp đơn giản nhất để chạy hai quy trình Python đồng thời là chạy chúng từ một tệp bash và nói với mỗi quy trình đi vào nền với toán tử & shell.run them from a bash file, and tell each process to go into the background with the & shell operator.

Bạn có thể chạy tập lệnh Python trong tập lệnh Python không?

Có nhiều cách để làm cho một tệp python chạy khác.Sử dụng nó giống như một mô -đun. Quan trọng tệp bạn muốn chạy và chạy các chức năng của nó.Bạn có thể sinh ra một quy trình mới bằng HĐH.Use it like a module. import the file you want to run and run its functions. You can spawn a new process using the os.

Tôi có thể chạy 2 tập lệnh Python cùng một lúc không?

Nếu bạn cần phối hợp thực thi và giao tiếp giữa các chương trình này, bạn sẽ cần sử dụng luồng.Nếu các tập lệnh có thể chạy độc lập, bạn có thể chạy chúng theo cách thủ công cùng một lúc từ thiết bị đầu cuối hoặc sử dụng cuộc gọi phụ từ tập lệnh đầu tiên: quy trình con.If the scripts can run independently, you can run them manually at the same time from a terminal, or use a subprocess call from the first script: subprocess.