[Python_7] Python Socket 编程
0. 说明
Python Socket 编程
1. TCP 协议
[TCP Server]
通过 netstat -ano 查看端口是否开启
# -*-coding:utf-8-*- """
TCP 协议的 Socket 编程,Server 端
Server 端绑定到指定地址,监听特定的端口,接受发来的连接请求
"""
import threading
import socket
import time class CommThread(threading.Thread):
def run(self):
while True:
# 接受数据
data = sock.recv(4096)
print("收到了%s = %s" % (str(self.addr), str(data)), ) def __init__(self, sock, addr):
threading.Thread.__init__(self)
self.sock = sock
self.addr = addr # 创建服务器套接字,绑定端口
ss = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ss.bind(("127.0.0.1", 8888))
ss.listen(0) while True:
sock, addr = ss.accept()
CommThread(sock, addr).start()
print("%s链接进来\r\n" % (str(addr)), )
time.sleep(1)
[TCP Client]
# -*-coding:utf-8-*-
"""
TCP 协议的 Socket 编程,Client 端
"""
import threading
import socket
import time # 创建服务器套接字,绑定端口
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect(("127.0.0.1" , 8888)) i = 1
while True:
str = "tom%d\r\n" % (i)
print ("client : " + str),
sock.send(bytes(str,'utf-8'))
time.sleep(1)
i += 1
2. UDP 协议
[UDP Server]
# -*-coding:utf-8-*- """
UDP 协议的 Socket 编程,Server 端
"""
import socket # 创建 UDP 接收方
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(("192.168.13.6", 9999)) i = 1
while True:
data = sock.recv(4096)
print(str(data))
[UDP Client]
# -*-coding:utf-8-*-
"""
UDP 协议的 Socket 编程,Client 端
""" import socket
import time # 创建 UDP 发送方
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(("192.168.13.6", 8888)) i = 1
while True:
sock.sendto(bytes(("tom" + str(i)),'utf-8'), ("192.168.13.255", 9999))
i += 1
time.sleep(1)
[Python_7] Python Socket 编程的更多相关文章
- Python Socket 编程——聊天室示例程序
上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...
- python/socket编程之粘包
python/socket编程之粘包 粘包 只有TCP有粘包现象,UDP永远不会粘包. 首先需要掌握一个socket收发消息的原理 发送端可以是1k,1k的发送数据而接受端的应用程序可以2k,2k的提 ...
- PYTHON SOCKET编程简介
原文地址: PYTHON SOCKET编程详细介绍 Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 Soc ...
- python socket编程笔记
用python实现一个简单的socket网络聊天通讯 (Linux --py2.7平台与windows--py3.6平台) 人生苦短之我用Python篇(socket编程) python之路 sock ...
- Python Socket 编程示例 Echo Server
简评:我们已经从「Python Socket 编程概览」了解了 socket API 的概述以及客户端和服务器的通信方式,接下来让我们创建第一个客户端和服务器,我们将从一个简单的实现开始,服务器将简单 ...
- Python Socket 编程——聊天室演示样例程序
上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和client的代码了解主要的 Python Socket 编程模型.本文再通过一个样例来加强一下对 Socket ...
- python socket编程入门(编写server实例)+send 与sendall的区别与使用方法
python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参 ...
- 第九章:Python高级编程-Python socket编程
第九章:Python高级编程-Python socket编程 Python3高级核心技术97讲 笔记 9.1 弄懂HTTP.Socket.TCP这几个概念 Socket为我们封装好了协议 9.2 cl ...
- python socket编程详细介绍
Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 SocketServer, 它提供了服务器中心类,可以简化网络 ...
随机推荐
- DDA, Bresenham line's algorithm and Voxel Traversal used in the Grid-Accelerator in PBRT
- DDA(Digital Differential Analyzer, 数值微分法) - 计算机图形学中,经常会遇到一些计算机中”经典“的问题.例如,如何利用计算机”离散“的特质,模拟 ...
- Leetcode 746. Min Cost Climbing Stairs
思路:动态规划. class Solution { //不能对cost数组进行写操作,因为JAVA中参数是引用 public int minCostClimbingStairs(int[] cost) ...
- 【IT笔试面试题整理】不用加减乘除做加法
[试题描述]写一个函数,求两个整数的和,要求在函数体内不得使用加减乘除四则运算符合. 基本思路是这样的: int A, B;A&B //看哪几位有进位A^B //不带进位加 考虑二进制加法的过 ...
- VMware12 克隆虚拟机并且重新分配ip、mac
记录如何快速拷贝一台虚拟机,并且重新分配IP.mac等方便自己做实验: 环境:VMWare12 .Redhat6.8 Step1.克隆虚拟机 虚拟机处于未打开状态,右击管理—>克隆 弹出克隆界 ...
- POJ 2349 Arctic Network(最小生成树中第s大的边)
题目链接:http://poj.org/problem?id=2349 Description The Department of National Defence (DND) wishes to c ...
- Curling 2.0(DFS简单题)
题目链接: https://vjudge.net/problem/POJ-3009 题目描述: On Planet MM-21, after their Olympic games this year ...
- Maven为不同环境配置打包
在开发过程中经常要遇到为不同的环境打包,这里面最主要的问题在于,不同环境的配置是不一样的,如果为不同环境打包每次都手工修改配置,那不但工作量大,而且很容易出错.如果用ant的话,用变量加上replac ...
- Jquey节点操作
创建添加节点: 创建jquery对象:$("<a href="http://baidu.com" target="_blank">百度请点 ...
- winform窗体 控件 【ListView】
ListView 表格试图 1.设置视图属性 Details 试图可见 2.设置列 Columns集合 编辑列—— 添加列,修改列名 3.添加行数据 Items 集 ...
- C# 异常语句 跳转语句 while循环 穷举法 迭代法
一 异常语句 ♦ try.....catch....finally 结构形式 try{ 可能会出错的代码语句 如果这里出错了,那么不会在继续下面的代码,而是直接进入catch中处理异常}catc ...