[英]Creating connection between two computers in python
問題:如何創建一個python應用程序,可以通過Internet連接和發送數據包到運行相同應用程序的另一台計算機? 我可以使用現有的代碼/庫嗎?
背景:我對編程很新(HS高級)。 我在python中創建了很多簡單的東西,但我最近決定開始一個更大的項目。 我正在考慮創建一個魔術:聚會助推器選秀模擬器,但我不確定它是否可行,因為我的技能設置所以我在開始之前詢問。 應用程序需要在計算機之間發送有關正在挑選/傳遞哪些卡的數據。
謝謝!
通過插座進行通信,無論如何。 只是一個問題,你是否使用現有的高級庫,或自己推出。
如果你這樣做是為了學習經驗,可能想要盡可能低級地開始,看看真正的細節。 這意味着您可能希望從使用TCP連接的SocketServer開始(TCP基本上保證數據傳輸; UDP不是)。
Google提供了一些簡單的示例代碼。 設置一個非常容易。 但是你必須定義你的通信協議的所有細節:哪一端發送什么時候,什么,哪一端聽,什么時候,聽眾會期待什么,回復確認收據等等。
同樣值得看看Kamaelia這種事情 - 它的原始用例是網絡系統,並且使構建這樣的東西相對直觀。 一些鏈接: 基本TCP系統概述 , 簡單聊天服務器 , 構建分層協議 , 如何發展新組件的演練 。 其他極端:P2P無線電系統: 源 , 同行 。
如果它有所不同,我們已經通過參與谷歌夏季代碼連續3年測試了系統是否可供初學者訪問,積極地吸引有經驗和缺乏經驗的開發人員。 所有這些人都設法建立了有用的系統。
從本質上講,如果您曾經使用過unix管道,那么這些想法應該是熟悉的。
警告:我寫了大量的Kamaelia :-)
如果你想學習如何做這些事情,玩幾種不同的方法是有道理的,你一定要看看Twisted(這個問題的標准答案),Pyro和標准庫工具。 每個人都有不同的方法,學習它們肯定會讓你受益匪淺!
但是,像nosklo一樣,我建議不要直接使用套接字庫而是使用庫 - 只是因為讓套接字編程比人們容易意識到的要難得多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.