Python Socket通信例子
一、TCP 通信
- 服务端
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# server_tcp.py import socket so = socket.socket()
so.bind(('127.0.0.1', 8080))
so.listen() while True:
conn, addr = so.accept() while True:
ret = conn.recv(1024).decode('utf-8')
print(ret)
if ret == 'bye':
break
msg = input("请输入<<< ")
if msg == 'bye':
conn.send(b'bye')
break conn.send(bytes(msg, encoding='utf-8')) conn.close() so.close()
- 客户端
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# client_tcp.py import socket so = socket.socket()
so.connect(('127.0.0.1', 8080)) while True:
msg = input("请输入<<< ")
if msg == 'bye':
so.send(b'bye')
break
so.send(bytes(msg, encoding='utf-8'))
ret = so.recv(1024).decode('utf-8')
print(ret)
if ret == 'bye':
break
二、UDP通信
- 服务端
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# server_udp.py import socket so = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
so.bind(('127.0.0.1', 8080)) while True:
ret, addr = so.recvfrom(1024)
print(ret.decode('utf-8'), addr) msg = input("请输入<<< ")
so.sendto(bytes(msg, encoding='utf-8'), addr) so.close()
- 客户端
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# client_udp.py import socket so = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
ip_port = ('127.0.0.1', 8080) while True:
msg = input("请输入<<< ")
if msg == 'bye':
so.sendto(b'bye', ip_port)
break
so.sendto(bytes(msg, encoding='utf-8'), ip_port)
ret, addr = so.recvfrom(1024)
print(ret.decode('utf-8'), addr)
if ret == 'bye':
break so.close()
Python Socket通信例子的更多相关文章
- Python Socket通信原理
[Python之旅]第五篇(一):Python Socket通信原理 python Socket 通信理论 socket例子 摘要: 只要和网络服务涉及的,就离不开Socket以及Socket编 ...
- python - socket通信笔记
参考: 通过编写聊天程序来熟悉python中多线程和socket的用法:https://www.cnblogs.com/mingjiatang/p/4905395.html python socket ...
- Python socket 通信功能简介
常用的地址家族AF_UNIX:基于文件,实现同一主机不同进程之间的通信AF_INET:基于网络,适用于IPv4AF_INET6:基于网络,使用于IPv6 常见的连接类型SOCK_STREAM:即TCP ...
- Python Socket通信黏包问题分析及解决方法
参考:http://www.cnblogs.com/Eva-J/articles/8244551.html#_label5 1.黏包的表现(以客户端远程操作服务端命令为例) 注:只有在TCP协议通信的 ...
- Python socket通信之FTP
Python中利用socket进行server端和client端通信是网络编程的基础,是最简单的传输范例. (懂网络的请自动跳过这一部分) 首先,要想通信,必须建立连接,建立连接的过程,需要clien ...
- java的Socket通信例子及关于java.net.SocketException: Socket is closed错误
今天写socket数据相互通信的时候,碰到一个及其蛋疼的错误.单向传输数据的时候server与client是没有问题的,但是两个都有输入输出操作的时候就出现了这个问题 java.net.SocketE ...
- 树莓派小车By 树莓派爱好者ITJoker(通过python socket通信实现树莓派视频小车)(一)
本文由树莓派爱好者ITJoker 编辑,转载请注明出处.本人也有新浪博客同样是树莓派爱好者ITJoker 所需材料:树莓派2B或者2B以上,L2985n驱动板,若干排线,电池及电池盒,usb无线网卡( ...
- Socket通信例子
Server端 using System; using System.Collections.Generic; using System.ComponentModel; using System.Da ...
- Python Socket 通信
参考: http://www.cnblogs.com/alex3714/articles/5830365.html Socket A network socket is an endpoint of ...
随机推荐
- db lock
1.锁的基本概念和功能 所谓锁(Lock),实际上是加在数据库.表空间.表.行或者数据页上的一种标记,用户在对各种数据库对象进行读取或者写入操作时首先要看该对象上的锁是否允许其进行相应操作.从允许用户 ...
- org.hibernate.HibernateException: connnection proxy not usable after transaction completion
今天yuan男神的程序报了这个错, getHibernateTemplate().saveOrUpdate(obj); getHibernateTemplate().flush(); getHiber ...
- 浅析原生js模仿addclass和removeclass
//判断有没有class hasClass(elements, cName) { return !!elements.className.match(new RegExp("(\\s|^)& ...
- [No000014F]计算机编程语言家族史
https://www.levenez.com/lang/
- [No0000E5]C# 运算符
运算符是一种告诉编译器执行特定的数学或逻辑操作的符号.C# 有丰富的内置运算符,分类如下: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 算术运算符 运算符:A=10,B=20 ...
- CSS:盒模型和position定位
盒模型 页面上显示的每个元素(包括内联元素)都可以看作一个盒子,即盒模型( box model ).请看Chrome DevTools 里的截图: 可以显而易见的看出盒模型由 4 部分组成.从内到外分 ...
- OC变量限定符和属性限定符
ARC当中变量的四种生命周期限定符 __strong __weak __unsafe_unretained __autoreleaseing __strong 是默认的限定符,无需显示引入,只要有强引 ...
- 字母算术的python算法
据说Google出过一道题目:WWWDOT – GOOGLE = DOTCOM. 其中每个字母代表一个数字,数字不能重复,而且最高位的数字不能为0. 像这样的谜题被称为cryptarithms或者字母 ...
- jQuery 报错,对象不支持tolowercase属性或方法
泪流满面.<input>里id和name都不能是nodeName,否则跟jquery.js冲突 JQuery 实践问题 - toLowerCase 错误 在应用JQuery+easyui开 ...
- hyperledge vagrant docker development environment
https://blog.csdn.net/zgljl2012/article/details/52896372