Python socket编程之一:
- soket 编程步骤
# -*- coding: utf-8 -*-
########################################################################
class sckt:
"""去元音缩写变量名 sckt 指代 socket """
#----------------------------------------------------------------------
def __init__(self, host = '192.168.1.3', port = 12345):
print("""地址初始化...""")
self.host = host
self.port = port
#----------------------------------------------------------------------
def run_server(self):
print("""运行服务器...""")
import socket
print("""第一步:创建 socket 对象""")
sckt = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print("""第二步:将 socket 绑定到指定地址""", self.host, self.port)
sckt.bind((self.host, self.port))
print("""第三步:使用 socket 套接字的 listen 方法接收连接请求""")
sckt.listen(5)
while True:
print("""第四步:通过 socket 的 accept 方法等待客户请求一个连接""")
connection, address = sckt.accept()
try:
print("""第五步:处理阶段,服务器和客户端通过 send 和 recv 方法通信""")
connection.settimeout(5)
buffer = connection.recv(1024)
print(buffer)
if buffer == b'Link':
connection.send(b'Welcome to server!')
else:
connection.send(b'Message form client: ' + buffer)
except socket.timeout:
print(b'Time out!')
print("""最后是:传输结束,服务器调用 socket 的 close 方法关闭连接...""")
connection.close()
#----------------------------------------------------------------------
def run_client(self, message = b'Link'):
print("""运行客户端...""")
import socket
print("""第一步:创建 socket 对象""")
sckt = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print("""第二步:连接服务器""", self.host, self.port)
sckt.connect((self.host, self.port))
import time
time.sleep(2)
print("""第三步:通信""")
sckt.send(message)
print(sckt.recv(1024))
print("""最后是:关闭连接...""")
sckt.close()
- 通过 cmd 查询地址、端口状态

- 运行效果
# -*- coding: utf-8 -*-
"""加载路径"""
import sys
sys.path.append('D:\360data\重要数据\桌面')
"""加载模块"""
import sckt
"""实例化"""
SCKT = sckt.sckt()
"""运行服务器"""
SCKT.run_server()
"""运行客户端"""
SCKT.run_client()


附流程图:

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_7] Python Socket 编程
0. 说明 Python Socket 编程 1. TCP 协议 [TCP Server] 通过 netstat -ano 查看端口是否开启 # -*-coding:utf-8-*- "&q ...
- 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, 它提供了服务器中心类,可以简化网络 ...
随机推荐
- matlab如何读取未知行数,带头文件和字段名的txt文件
文件格式是这样的 20120108 50024 X235RZB30801 01 15 2361 2362 2363 2364 2365 2366 2367 2368 2369 236A 236B 23 ...
- WP&Win10开发: RichTextBlock实现富文本并处理换行
思路:1.构建字典.2.在字符串中匹配字典的key,将匹配到的key转换成对应的value3.将替换后的字符串,转化成xaml形式,加载该xaml以实现富文本. 代码如下: private Parag ...
- Web API 基于ASP.NET Identity的Basic Authentication
今天给大家分享在Web API下,如何利用ASP.NET Identity实现基本认证(Basic Authentication),在博客园子搜索了一圈Web API的基本认证,基本都是做的Forms ...
- [bzoj 1503][NOI 2004]郁闷的出纳员(平衡树)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1503 分析: 经典的平衡树题,我用Treap做的 下面有几点注意的: 1.可能出现新加入的人的 ...
- android之对话、单复框的使用
对话框 通过builder来构建一个单选框 package xidian.dy.com.chujia; import android.content.DialogInterface; import a ...
- 第四十四课:jQuery UI和jQuery easy UI
jQuery UI是jQuery官方提供的功能效果和UI样式.作为官方出的东西,它一直没有被人们看重,一是它没有datagrid,tree等UI库必备的东西,二是它修改太过频繁,体积庞大.其实它所有以 ...
- WebClient和HttpClient, 以及webapi上传图片
httppost请求. applicationkey/x-www-form-urlencoded请求: Email=321a&Name=kkfewwebapi里面, 如果用实体, 能接受到. ...
- Journey Of Code组组员贡献率
628是该组的组长,前期的主要任务是数据库的设计,中后期加入实现功能模块的工作,实现了文件的上传和解析excel表格的功能,负责协调组员之间的工作和沟通,并且也是最后上台进行演示的人员:所以贡献率有3 ...
- php Curl_setop 的学习
cur_op的学习 ###curl_setopt (int ch, string option, mixed value) option的参数 CURLOPT_INFILESIZE: 当你上传一个文件 ...
- C语言中memset(void *s, char ch,unsigned n)用的用法
将指针s所指的内存空间中前n为重置为字符c 程序例: #include <string.h> #include <stdio.h> #include <memory.h& ...