Python兩臺(tái)電腦實(shí)現(xiàn)TCP通信的方法示例
為了實(shí)現(xiàn)Nao機(jī)器人與電腦端的TCP通信,于是研究了一下Python實(shí)現(xiàn)TCP通信,在網(wǎng)上也看到了很多例子,但大多都是在一臺(tái)機(jī)器上驗(yàn)證。在兩臺(tái)機(jī)器上使用,出了一些小故障。
注意:若兩臺(tái)電腦通信出了問(wèn)題,若能ping通!大部分是防火墻的問(wèn)題。一開(kāi)始A做服務(wù)器,B做客戶端能實(shí)現(xiàn);B做服務(wù)器,A做客戶端,A就不能連接到B。我換了一臺(tái)電腦A就能實(shí)現(xiàn)通信了。應(yīng)該是A的防火墻需要設(shè)置。但是A的防火墻全關(guān)了也不能實(shí)現(xiàn)。真是很讓人搞不懂。
首先是服務(wù)器端代碼:
# -*- encoding: utf-8 -*-
import socket
IP = "192.168.1.153" #服務(wù)器端可以寫"localhost",可以為空字符串"",可以為本機(jī)IP地址
port = 40005 #端口號(hào)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((IP,port))
s.listen(1)
print('listen at port :',port)
conn,addr = s.accept()
print('connected by',addr)
while True:
data = conn.recv(1024)
data = data.decode()#解碼
if not data:
break
print('recieved message:',data)
send = raw_input('return:')#python27要寫raw_input,python3.X可寫input
conn.sendall(send.encode())#再編碼發(fā)送
conn.close()
s.close()
客戶端代碼:
# -*- encoding: utf-8 -*-
import socket
import sys
IP = '192.168.1.153' #填寫服務(wù)器端的IP地址
port = 40005 #端口號(hào)必須一致
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect((IP,port))
except Exception as e:
print('server not find or not open')
sys.exit()
while True:
trigger = raw_input("send:")
s.sendall(trigger.encode())
data = s.recv(1024)
data = data.decode()
print('recieved:',data)
if trigger.lower() == '1':#發(fā)送1結(jié)束連接
break
s.close()
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python 中Arduino串口傳輸數(shù)據(jù)到電腦并保存至excel表格
- Python使用itchat模塊實(shí)現(xiàn)簡(jiǎn)單的微信控制電腦功能示例
- python實(shí)現(xiàn)控制電腦鼠標(biāo)和鍵盤,登錄QQ的方法示例
- python輸出電腦上所有的串口名的方法
- python實(shí)現(xiàn)遠(yuǎn)程控制電腦
- 使用python獲取電腦的磁盤信息方法
- python實(shí)現(xiàn)電腦自動(dòng)關(guān)機(jī)
- Python實(shí)現(xiàn)的讀取電腦硬件信息功能示例
- python通過(guò)移動(dòng)端訪問(wèn)查看電腦界面
相關(guān)文章
python庫(kù)ggpy安裝使用實(shí)例(散點(diǎn)圖創(chuàng)建)
這篇文章主要為大家介紹了python庫(kù)ggpy安裝使用實(shí)例,如何創(chuàng)建簡(jiǎn)單的散點(diǎn)圖及制作帶有趨勢(shì)線的散點(diǎn)圖詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
python查看矩陣的行列號(hào)以及維數(shù)方式
這篇文章主要介紹了python查看矩陣的行列號(hào)以及維數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
Python 中的字符串基礎(chǔ)與應(yīng)用小結(jié)
在Python中,字符串可以用單引號(hào)或雙引號(hào)括起來(lái),'hello' 與 "hello" 是相同的,這篇文章主要介紹了Python 中的字符串基礎(chǔ)與應(yīng)用,需要的朋友可以參考下2023-09-09
python將多個(gè)文本文件合并為一個(gè)文本的代碼(便于搜索)
源代碼目錄一般很詳細(xì),每個(gè)代碼文件都不長(zhǎng),一般只占幾十行而已。在跟著書籍學(xué)習(xí)的過(guò)程中,可以打開(kāi)源代碼運(yùn)行之后查看效果,或者適當(dāng)修改看看變化,這都是很好的掌握技術(shù)的好辦法。2011-03-03
淺析python中while循環(huán)和for循環(huán)
在本篇文章里小編給各位整理的是關(guān)于python中while和for循環(huán)知識(shí)點(diǎn)詳解,有興趣的朋友們可以學(xué)習(xí)下。2019-11-11
python 圖像處理畫一個(gè)正弦函數(shù)代碼實(shí)例
這篇文章主要介紹了python 圖像處理畫一個(gè)正弦函數(shù)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09

