Python两台电脑实现TCP通信的方法示例


Posted in Python onMay 06, 2019

为了实现Nao机器人与电脑端的TCP通信,于是研究了一下Python实现TCP通信,在网上也看到了很多例子,但大多都是在一台机器上验证。在两台机器上使用,出了一些小故障。

注意:若两台电脑通信出了问题,若能ping通!大部分是防火墙的问题。一开始A做服务器,B做客户端能实现;B做服务器,A做客户端,A就不能连接到B。我换了一台电脑A就能实现通信了。应该是A的防火墙需要设置。但是A的防火墙全关了也不能实现。真是很让人搞不懂。

首先是服务器端代码:

# -*- encoding: utf-8 -*-
import socket
 
IP = "192.168.1.153" #服务器端可以写"localhost",可以为空字符串"",可以为本机IP地址
port = 40005 #端口号
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())#再编码发送
 
 
conn.close()
s.close()

客户端代码:

# -*- encoding: utf-8 -*-
import socket
import sys
IP = '192.168.1.153' #填写服务器端的IP地址
port = 40005 #端口号必须一致
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':#发送1结束连接
    break
s.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现从web抓取文档的方法
Sep 26 Python
python网络编程之读取网站根目录实例
Sep 30 Python
Python基础语法(Python基础知识点)
Feb 28 Python
利用Python如何生成随机密码
Apr 20 Python
python 文件查找及内容匹配方法
Oct 25 Python
对pycharm 修改程序运行所需内存详解
Dec 03 Python
Python用61行代码实现图片像素化的示例代码
Dec 10 Python
Python 多线程其他属性以及继承Thread类详解
Aug 28 Python
python中利用matplotlib读取灰度图的例子
Dec 07 Python
Python模拟伯努利试验和二项分布代码实例
May 27 Python
python查询MySQL将数据写入Excel
Oct 29 Python
Python中Pyspider爬虫框架的基本使用详解
Jan 27 Python
python3利用Socket实现通信的方法示例
May 06 #Python
75条笑死人的知乎神回复,用60行代码就爬完了
May 06 #Python
Python Flask 搭建微信小程序后台详解
May 06 #Python
Python玩转PDF的各种骚操作
May 06 #Python
使用Python和Prometheus跟踪天气的使用方法
May 06 #Python
Python中常用的8种字符串操作方法
May 06 #Python
基于python if 判断选择结构的实例详解
May 06 #Python
You might like
php根据命令行参数生成配置文件详解
2019/03/15 PHP
类似CSDN图片切换效果脚本
2009/09/17 Javascript
jquery cookie的用法总结
2013/11/18 Javascript
js特殊字符过滤的示例代码
2014/03/05 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
javascript排序函数实现数字排序
2015/06/26 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
2015/09/06 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
2016/06/13 Javascript
JS及PHP代码编写八大排序算法
2016/07/12 Javascript
JavaScrpt中如何使用 cookie 设置查看与删除功能
2017/07/09 Javascript
浅谈Vue服务端渲染框架Nuxt的那些事
2018/12/21 Javascript
微信小程序点击生成朋友圈分享图(遇到的坑)
2020/06/17 Javascript
Vue-resource安装过程及使用方法解析
2020/07/21 Javascript
python遍历文件夹并删除特定格式文件的示例
2014/03/05 Python
用Python输出一个杨辉三角的例子
2014/06/13 Python
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
python计算方程式根的方法
2015/05/07 Python
在Django中编写模版节点及注册标签的方法
2015/07/20 Python
Python heapq使用详解及实例代码
2017/01/25 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
详解PANDAS 数据合并与重塑(join/merge篇)
2019/07/09 Python
python利用百度云接口实现车牌识别的示例
2020/02/21 Python
解决Django中checkbox复选框的传值问题
2020/03/31 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
python 实现有道翻译功能
2021/02/26 Python
倩碧澳大利亚官网:Clinique澳大利亚
2019/07/22 全球购物
阿姆斯特丹城市卡:Amsterdam Pass
2019/12/01 全球购物
办公室打字员岗位职责
2014/04/16 职场文书
大学毕业生推荐信
2014/07/09 职场文书
学校政风行风评议工作总结
2014/10/21 职场文书
群众路线专项整治方案
2014/10/27 职场文书
2015年度房地产工作总结
2015/04/09 职场文书
Python中递归以及递归遍历目录详解
2021/10/24 Python
Python Pygame实战在打砖块游戏的实现
2022/03/17 Python
maven 解包依赖项中的文件的解决方法
2022/07/15 Java/Android