[問題] 關於 python 宣告變數

看板Python作者 (非常念舊)時間9年前 (2015/05/18 16:45), 9年前編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
抱歉 在這再請教一下 我用 python serila 套件 def functiion ser = serial.Serial("/dev/ttyS2", baudrate=9600, timeout=1) thread = Thread(target=function) thread.start() 我想要每次啟動這個 thread,然後因為每次的啟動 thread,讓它產生不同變數名稱 例如第一次我想要 ser=serial.Serial("/dev/ttyS2", baudrate=9600, timeout=1) 第二次啟動希望變成 ser1=serial.Serial("/dev/ttyS2", baudrate=9600, timeout=1) 以上這樣..請問 python 可以做到嗎,原因是每次的 thread 都共享 ser ,所以只要我 關掉 -> ser.close(),所有的 thread 的 ser,就會被影響到@@。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.147.121 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1431938738.A.B1A.html ※ 編輯: gn00618777 (118.163.147.121), 05/18/2015 17:00:52

05/18 18:19, , 1F
好吧,我想到第二種備案了...這種一直開 thread 不太
05/18 18:19, 1F

05/18 18:20, , 2F
好維護
05/18 18:20, 2F

05/18 19:08, , 3F
你最後一句不成立啊, ser 是函數 local, 不會互相影響
05/18 19:08, 3F

05/18 23:55, , 4F
ser應該會是每個thread自有的...確定問題在thread嗎XD
05/18 23:55, 4F

05/19 21:34, , 5F
恩我錯了~~,也有用小範例驗證
05/19 21:34, 5F
文章代碼(AID): #1LMQQoiQ (Python)