Re: [問題] os.popen有辦法將一個模組物件化 重複 …
很謝謝你的回應!
不過可能我表達有些錯誤
我舉另外一個例子好了
result=os.popen("echo 'query_name' | ./phonebook").read()
phonebook是用c寫的程式
每次執行他的時候 他都會開始載入背後的資料庫
如果我只是單次執行的話
像是query_name= "John"
他就會回傳該人名的電話號碼
只不過他每次執行都需要重新載入電話號碼的資料庫
如果要執行多次的時候 就變成每次花時間重新載入
我的想法是有什麼辦法把result變成物件
下次再執行的時候 就不用再重新載入資料庫了?
感謝感謝!
※ 引述《keitheis (無)》之銘言:
: ※ 引述《richtrf (嘉)》之銘言:
: : 我有一個程式有用到os.popen
: : 主要是要去執行一個unix executable的程式
: : 舉例來說
: : c=os.popen("echo '1+1' | ./counter").read()
: : 跑起來是沒問題
: : 可是問題在於counter每次執行的時候
: : 都需要先花時間讀入資料(只需執行一次)
: : 所以想說不知道有什麼辦法解決這個困惱
: : 簡省每次counter重新執行的時間
: : 感謝大家!
: 這個問題有點模糊
: 試著跑一次:
: Python 2.5.4 (r254:67917, Dec 23 2008, 14:57:27)
: In [1]: import os
: In [2]: c=os.popen("echo '1+1' | ./counter").read()
: In [3]: c
: Out[3]: '3\n'
: In [4]: type(c)
: Out[4]: <type 'str'>
: 不論 counter 幹了什麼,假設最後是輸出一個數
: 那麼讀入該輸出的 c 已經是一個 (string) 物件
: 如果程式的功能就是每次執行一次 counter
: 且 counter 的功能就是每次讀入最新的資料
: 那問題大概就是怎麼把 counter 的程式最佳化了?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.123.129
→
04/09 19:41, , 1F
04/09 19:41, 1F
→
04/09 21:52, , 2F
04/09 21:52, 2F
→
04/09 23:03, , 3F
04/09 23:03, 3F
→
04/09 23:07, , 4F
04/09 23:07, 4F
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章