我正計劃一個應用程序在python3中使用三個文本文件或三個數據庫表,我不知道該使用什麼。這些文件只包含字符串或單個列一個數據庫表,每行都有一個字符串。
應用程序有三個方案program_A,PROGRAM_B,program_C其操作這三個文件,FILE_A和FILE_B和file_C.Program一個讀/寫FILE_A讀FILE_C和寫入FILE_B,PROGRAM_B讀/寫FILE_B,program_C寫FILE_A和FILE_C。 file_A和file_B都是虛構的隊列,所以程序從文件中讀取一行,然後從文件中刪除該行(因此我提到了讀/寫),並且寫入文件的程序將一行寫入文件。
我不知道如何讓這些程序工作,因爲這些程序正在同時訪問這些文件。我查看了sqlite文件鎖定狀態,我不知道如何使用它來解決我的情況。我是也不知道我是否應該使用sqlite數據庫或簡單的文本文件。
我也在考慮使用某種共享內存或內存數據庫,當應用程序啓動時我可以加載這些文件的內容,並在應用程序退出時寫回文件,但是擔心如果某些軟件硬件故障會這意味着我將失去在該應用程序運行中完成的工作,因爲文件沒有因失敗而更新。同時讀取和寫入python文件
0
A
回答
1
讀寫同一個文件?不,這隻會帶來痛苦和困難。您可以嘗試threading的或multiprocessing的共享數據機制,並有一個適合您的需求的queue
實施。
SQLite的方法似乎也沒關係,你可以添加必要的數據來設定這些「排隊」等的順序,但我沒有通過數據庫通信的進程風扇。
相關問題
- 1. Python - 寫入和讀取臨時文件
- 2. 同時讀取和寫入文件
- 3. C:同時讀取和寫入文件
- 4. 同時讀取和寫入文件?
- 5. Python和C文件同時讀取/寫入
- 6. Python:讀取和寫入CSV文件
- 7. Python快速讀取和寫入文件
- 8. 從python中讀取和寫入文件
- 9. Python:讀取和寫入多個文件
- 10. 讀取和寫入文件python
- 11. 在Python中讀取和寫入文件
- 12. Linux - 同時從文件讀取/寫入
- 13. 讀取和寫入同一個文件
- 14. 寫入和讀取同一個文件
- 15. java:同時讀取和寫入文件,文件併發
- 16. 讀取和寫入文件
- 17. 讀取和寫入文件
- 18. 讀取和寫入文件
- 19. 寫入和讀取文件
- 20. 同時寫入和讀取同一文件(磁盤異步?)
- 21. 初學者Python:讀取和寫入同一個文件
- 22. 如何使python寫入json讀取和寫入每個cicle的相同文件
- 23. Python按行讀取文件並寫入不同的文件
- 24. Python:嘗試讀取和寫入多個文件時發出
- 25. python中讀取和寫入csv文件時出錯
- 26. 同時讀取/寫入
- 27. 同時讀取和寫入變量
- 28. boost :: tcp :: iostream同時讀取和寫入
- 29. 套接字讀取和寫入同時
- 30. 同時讀取和寫入java
謝謝,我想多處理的機制,可以適合我的需要,尤其是queue.now我經歷的機制來實現共享內存,在多處理的documentation.I已經看到很多的答覆,以阻止共享內存類似的問題,所以我將更多地研究這個話題。 – user2078134 2013-02-20 10:38:59
如果我正確理解你的情況,你不需要共享內存機制,隊列就足夠了。但是,不要相信'qsize'和'empty'。在它明確接收到它等待的隊列是空的確認後,總是停止一個進程(例如,將'None'放在隊列中,並且當進程讀取它時,它停止)。 – dmg 2013-02-20 10:57:42
感謝關於隊列中'無'的提示.Queues將滿足file_A,file_B部分,但file_C部分不是隊列。program_C確實寫入文件的末尾,但program_A需要遍歷所有字符串出現在這個文件中。 – user2078134 2013-02-20 12:46:57