TCPServer端:

__author__ = 'Nature'
# -*- coding: utf-8 -*-
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ=1024
ADDR = (HOST,PORT) tcpserver = socket(AF_INET,SOCK_STREAM)
tcpserver.bind(ADDR)
tcpserver.listen(5) while True:
print("waiting for connection....")
tcpclient ,addr = tcpserver.accept()
print('...connected from:',addr)
while True:
data = tcpclient.recv(BUFSIZ)
if not data:
break
tcpclient.send(('[%s]%s'%(ctime(),data)).encode())
tcpclient.close()
tcpserver.close()

TCPclient端:

__author__ = 'Nature'
# -*- coding: utf-8 -*-
from socket import * HOST ='127.0.0.1'
PORT = 21567
BUFSIZE = 1024
ADDR = (HOST,PORT) tcpclient = socket(AF_INET,SOCK_STREAM)
tcpclient.connect(ADDR) while True:
data = input('>')
if not data:
break
tcpclient.send(data.encode())
data = tcpclient.recv(BUFSIZE)
if not data:
break
print(data)
tcpclient.close()

UDPserver端:

__author__ = 'Nature'
# -*- coding: utf-8 -*-
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ=1024
ADDR = (HOST,PORT) tcpserver = socket(AF_INET,SOCK_DGRAM)
tcpserver.bind(ADDR) while True:
print("waiting for message....")
tcpclient ,addr = tcpserver.recvfrom(BUFSIZ)
tcpserver.sendto(('[%s]%s'%(ctime(),tcpclient)).encode(),addr)
print('...receive from and returned to:',addr)
tcpserver.close()

  

UDPclient端:

__author__ = 'Nature'
# -*- coding: utf-8 -*-
from socket import * HOST ='127.0.0.1'
PORT = 21567
BUFSIZE = 1024
ADDR = (HOST,PORT) udpclient = socket(AF_INET,SOCK_DGRAM) while True:
data = input('>')
if not data:
break
udpclient.sendto(data.encode(),ADDR)
data,ADDR = udpclient.recvfrom(BUFSIZE)
if not data:
break
print(data)
udpclient.close()

  

Python中的网络编程的更多相关文章

  1. python高级之网络编程

    python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及其源码分析 1.网络通信概念 说 ...

  2. python 之socket 网络编程

    socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Un ...

  3. Python中的并发编程

    简介 我们将一个正在运行的程序称为进程.每个进程都有它自己的系统状态,包含内存状态.打开文件列表.追踪指令执行情况的程序指针以及一个保存局部变量的调用栈.通常情况下,一个进程依照一个单序列控制流顺序执 ...

  4. 第六篇:python高级之网络编程

    python高级之网络编程   python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及 ...

  5. python中的TCP编程学习

    今天看了一下关于python的TCP编程. 发现思路和其他语言(比如java)思路基本上差点儿相同. 先看client.基本过程例如以下: 第一步:创建一个socket 第二步:建立连接 第三步:发送 ...

  6. Python中的网络扫描大杀器Scapy初探

    Python中的网络扫描大杀器Scapy初探     最近经历了Twisted的打击,这个网络编程实在看不懂,都摸不透它的内在逻辑,看来网络编程不是那么好弄的.还好,看到了scapy,这种网络的大杀器 ...

  7. 网游中的网络编程系列1:UDP vs. TCP

    原文:UDP vs. TCP,作者是Glenn Fiedler,专注于游戏网络编程相关工作多年. 目录 网游中的网络编程系列1:UDP vs. TCP 网游中的网络编程2:发送和接收数据包 网游中的网 ...

  8. 网游中的网络编程3:在UDP上建立虚拟连接

    目录 网游中的网络编程系列1:UDP vs. TCP 网游中的网络编程2:发送和接收数据包 网游中的网络编程3:在UDP上建立虚拟连接 TODO 二.在UDP上建立虚拟连接 介绍 UDP是无连接的,一 ...

  9. Python 中的 TK编程

    可爱的 Python:Python 中的 TK编程 http://www.ibm.com/developerworks/cn/linux/sdk/python/charm-12/ python che ...

随机推荐

  1. 论php数组合并

    注:尽量不要在循环中操作数据库. 1.两个一维数组合并成一个一维数组 $a = array('morning','afternoon','night'); $b = array('breakfast' ...

  2. mybatis-generator运行命令

    java -jar mybatis-generator-core-x.x.x.jar -configfile generatorConfig.xml -overwrite

  3. Spring-----定时任务Quartz配置之手动设置

    一 配置xml如下: <!-- 定时任务配置 --> <bean id="scheduler" class="org.springframework.s ...

  4. PHP 文件限速下载代码

    php 文件限速下载代码 <?php include("DBDA.class.php"); $db = new DBDA(); $bs = $_SERVER["QU ...

  5. Linux下按程序查实时流量 network traffic

    实然看到下载速度多达几M/s,但实际上并没有什么占用带宽的进程. 相查看每个程序占用的网络流量, 但系统自带的 System Monitor 只能查看全局的流量, 不能具体看某个程序的...... k ...

  6. 带有runat="server" 的服务器控件通过 ClientID 获取Id

    带有runat="server" 的服务器控件 获取Id <input type="text" id="txtName" runat= ...

  7. js中获取窗口高度的方法

    取窗口滚动条滚动高度 function getScrollTop() { var scrollTop=0; if(document.documentElement&&document. ...

  8. dispatcherServlet 真正处理请求的源码解析

    学习博客: http://wujiu.iteye.com/blog/2214603

  9. switch的使用

    ji本没用过这个函数,今天用到了它,发现了一些使用要注意的地方: switch的参数支持int和枚举,单jdk1.7后,开始支持String类型.我特意在jdk1.8上试了试, public clas ...

  10. SQL Server 2008 R2 错误代码:233

    解决方法:打开SQL Server配置管理器,找到MSSQLSERVER的协议,启动TCP/IP和Named Pipes