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. kailli linux download

    https://www.offensive-security.com/kali-linux-arm-images/ Courses Certifications Online Labs Penetra ...

  2. 关于node的http模块

    var http = require('http'); /** * 创建服务器的两种写法,第一种写法如下 * 由于server已经继承了EventEmitter的事件功能,所以可以使用高级函数编写方式 ...

  3. 【前端攻略】:玩转图片Base64编码

    引言 图片处理在前端工作中可谓占据了很重要的一壁江山.而图片的 base64 编码可能相对一些人而言比较陌生,本文不是从纯技术的角度去讨论图片的 base64 编码.标题略大,不过只是希望通过一些浅显 ...

  4. 解决Myeclipse PermGen space问题

    myeclipse配置web服务器配置 Window—Preferences—Myeclipse—Servers—tomcat JDK的Optional Java VM arguments配置为:-X ...

  5. Linux C 信号 pause、sigsuspend 的相同与区别

    pause函数:       功能:让进程暂停直到信号出现   #include<unistd.h>      intpause();    函数说明:pause()会令目前的进程暂停(进 ...

  6. HttpCache缓存扩展方法

    using System;using System.Collections;using System.Configuration;using System.Web;using System.Web.C ...

  7. Java读取word文件,字体,颜色

    在Android读取Word文件时,在网上查看时可以用tm-extractors,但好像没有提到怎么读取Word文档中字体的颜色,字体,上下标等相关的属性.但由于需要,要把doc文档中的内容(字体,下 ...

  8. WPF 中的image控件的Source如何赋值

    Image image=new Image();image.Source = new BitmapImage(new Uri(@"daw\adw.jpg",UriKind.Rela ...

  9. ORA-00257:archiver error解决办法

    出现ORA-00257错误(空间不足错误),通过查找资料,绝大部分说这是由于归档日志太多,占用了全部的硬盘剩余空间导致的,通过简单删除日志或加大存储空间就能够解决. (一).oralce 11g更改归 ...

  10. DevExpress 隐藏Ribbon中barbuttonItem的SuperTip(2)

    在form界面增加 toolTipController 工具 然后将 ribbonControl.ToolTipController 的属性设置成 toolTipController toolTipC ...