初始socket编程
服务端语法
import socket # 导入套接字模块
# 生成一个socket对象进行网络编程操作
server = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM) # family用那种家族协议进行传输 AF_INET相当于基于网络来进行通信的
# type.socket.SOCK_STREAM 用那种类型来进行同行 tup流式的形式进行数据传输
# 绑定一个ip和端口,用于客服端进行识别服务端的位置和身份进行连接
server.bind(('192.168.43.239', 8080)) # 第一个参数是服务器的IP地址,范围是0~65535第二个参数是应用的端口0~1024是个操作系统用的
# 开始运行
server.listen(2) # 最大进行几个连接进行访问
# 等待客服端进行连接访问
conn, client_addr = server.accept() # 拿到客服端访问的结果 一个客服端socket的对象,一个客服端的IP地址和端口
# 拿到架好的网线进行收发消息
data = conn.recv(1024) # 接收多少的bytes字节的data数据的最大数
print(data) # 打印一下收到的消息内容
conn.send(data.upper()) # 发送消息回去
# 关闭服务
conn.close() # 关闭客服端的socket访问
# 关闭服务端的socket
server.close() 客服端语法
import socket
service = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM)
# 发送消息 连接服务端
service.connect(('192.168.43.239', 8080))
# 发收消息
service.send('hello world'.encode('utf-8')) # 发送消息
data = service.recv(1024) # 接受消息
print(data)
# 关闭socket的通道
service.close()
初始socket编程的更多相关文章
- 初始Socket编程(python)
通信双方要有一个服务端和一个客户端,所以要分开去写代码. 所以我创建了两个py程序,第一个是服务端:iServer.py 和客户端 iClient.py 服务端: #coding:utf-8from ...
- [转]C语言SOCKET编程指南
1.介绍 Socket编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措?等 ...
- C语言SOCKET编程指南
1.介绍 Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措? ...
- linux下socket编程-进程间通信
一.什么是Socket Socket接口是TCP/IP网络通信的API,Socket接口定义了许多函数或例程,可以用它们来开发TCP/IP网络上的应用程序. Socket类型有两种:流式Socket ...
- linux下socket编程
相关结构 //下边这两个结构定义在<sys/types.h>里 //一般的地址结构,只能用于覆盖(把其他地址转换为此类型),且只能引用该地址的sa_family字段 struct sock ...
- C# Socket编程(4)初识Socket和数据流
经过前面基础知识作为背景,现在对Socket编程进行进一步的学习.在System.Net.Socket命名空间提供了Socket类,利用该类我们可以直接编写Socket的客户端和服务的的程序.但是直接 ...
- 6.1.1Linux下Socket编程
什么是Socket Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序.要学Internet上的TCP/IP网络编程, ...
- 如何为可扩展系统进行Java Socket编程
从简单I/O到异步非阻塞channel的Java Socket模型演变之旅 上世纪九十年代后期,我在一家在线视频游戏工资工作,在哪里我主要的工作就是编写Unix Unix Berkley Socket ...
- socket编程原理
socket编程原理 1.问题的引入 1) 普通的I/O操作过程: UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-rea ...
随机推荐
- Leetcode 题目整理-3 Palindrome Number & Roman to Integer
9. Palindrome Number Determine whether an integer is a palindrome. Do this without extra space. clic ...
- CSS DIV重叠
<div style="position: relative"> <div>content</div> <div style=" ...
- <背包>solution_CF366C_Dima and Salad
Dima and Salad Dima, Inna and Seryozha have gathered in a room. That's right, someone's got to go. T ...
- 实验17:NAT
实验14-1:静态NAT 配置 Ø 实验目的通过本实验可以掌握(1)静态NAT 的特征(2)静态NAT 基本配置和调试 Ø 拓扑结构 实验步骤n 步骤1:配置路由器R1 提供NAT ...
- 手把手实操教程!使用k3s运行轻量级VM
前 言 k3s作为轻量级的Kubernetes发行版,运行容器是基本功能.VM的管理原本是IaaS平台的基本能力,随着Kubernetes的不断发展,VM也可以纳入其管理体系.结合Container和 ...
- java Map排序问题
java 中,Map常见的有HashMap ,TreeMap等等,Map是一个接口,我们不能直接声明一个Map类型的对象,在实际开发 中,比较常用的Map性数据结构是HashMap和TreeMap,它 ...
- 第3章 JDK并发包(三)
3.2 线程复用:线程池 一种最为简单的线程创建和回收的方法类似如下代码: new Thread(new Runnable() { @Override public void run() { // d ...
- EIP
EIP中的值就是CPU下次要执行的地址 jmp 直接修改eip的值 1.jmp imm=mov eip,imm 2.jmp r 3.jmp m call 直接修改eip的值,并把当前指令的下一行地址存 ...
- golang-练习ATM
package main import "fmt" var ( action int loop bool = true save_money int money int draw_ ...
- H5页面优化
1. 页面优化 优化内容: 提升网页响应速度:减少请求,文件大小,页面性能 对搜索引擎,屏幕阅读器友好: 提高可读性,可维护性:规范代码 优化操作: 减少请求:小图标使用sprite拼图合并为一个图片 ...