Python 程序間資料互動與共享

2021-08-19 15:42:55 字數 1507 閱讀 6395

程序間資料互動的3種方式:佇列queue,管道pipe,manager。

#

佇列實現程序間資料互動

from multiprocessing import process,queue

def

run(q):

q.put(["xiaohei",89

,none])

if __name__=='__main__':

q=queue()

p=process(target=run,

args=(q,))

p.start()

print(q.get())

p.join()

#pipe

實現程序間資料互動

from multiprocessing import process,pipe

#子程序傳送接收傳送,父程序接收傳送接收

def

s(conn):

conn.send("are you ok?")

print(conn.recv())

conn.send("i am a bit tired")

conn.close()

if __name__=='__main__':

father_conn,son_conn=pipe() #

此處pipe()

產生雙向管道,將管道的兩端分別傳給兩個程序,兩個程序互相收發

p=process(target=s,

args=(son_conn,))

p.start()

print(father_conn.recv())

father_conn.send("i am fine,thanks,and you?")

print(father_conn.recv())

p.join()

#manager

實現資料互動與共享

from multiprocessing import process,manager

import os

def

run(d,l):

d[os.getpid()]=os.getpid() #os.getpid()

獲得程序

id print(l)

if __name__=='__main__':

with manager() as manager:

d=manager.dict() #

生成乙個字典,可在多程序間共享和傳遞

l=manager.list() #

生成乙個列表,可在多程序間共享和傳遞

p_obj=

for i in

range(10):

p=process(target=run,

args=(d,l,))

p.start()

for p in p_obj:

p.join()

print(d)

print(l)

python使用者互動與注釋

1 input輸入函式,name input 請輸入你的姓名 將輸入的內容賦值給name變數。2 input會把你輸入的資料不管是你輸入的是數字還是字串,都會轉換成str格式。3 格式化輸出 name input name age input age city input city info inf...

VUE 元件間資料互動

元件通過props來接收傳遞過來的值vue.component a item 父元件通過屬性傳遞值給子元件 父元件的值 a item 靜態的值 n a item 動態的值 注意 在props中使用駝峰命名時,在末班中需要用短橫線方式,字串模板中沒有限制。例 vue.component a item ...

python使用者互動與格式化輸出

1.1 什麼是與使用者互動 使用者互動就是人往計算機中input 輸入資料,計算機print 輸出結果 1.2 為什麼要進行使用者互動 為了讓計算機能夠像人一樣與使用者溝通交流 1.3 如何與使用者互動 互動的本質就是輸入 輸出 1.3.1 輸入input 在python3中input會等待使用者的...