码迷,mamicode.com
首页 > 其他好文 > 详细

socket编程

时间:2017-07-06 20:38:56      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:decode   bin   import   finish   一个   cep   coding   python   uil   

客户端:

#-*- coding:utf-8 -*-
#客户端程序
import socket

client = socket.socket() #1、创建一个客户端对象

client.connect((‘localhost‘,22332)) #2、连接到服务器

client.send(b‘hello‘) #3、发送数据

data = client.recv(1024) #4、接收数据

print(‘接受的数据:‘,data)

client.close() #5、关闭客户端

 服务器:

#-*- coding:utf-8 -*-
#服务器程序
import socket

server = socket.socket() #1、创建服务器套接字对象

server.bind((‘localhost‘,22332)) #2、绑定ip和端口

server.listen() #3、让套接字对象处于监听状态
print("正在监听...")

conn,addr = server.accept() #接收客户端报文
print("报文来了!")
print("conn:",conn,"addr:",addr)

data = conn.recv(1024) #接收报文中的数据
print("客户端的数据:",data)

conn.send(data.upper()) #发送响应报文

server.close() #关闭服务器

 执行结果:

客户端:

接受的数据: b‘HELLO‘

 服务器:

正在监听...
报文来了!
conn: <socket.socket fd=356, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=(‘127.0.0.1‘, 22332), raddr=(‘127.0.0.1‘, 63173)> addr: (‘127.0.0.1‘, 63173)
客户端的数据: b‘hello‘
[Finished in 3.4s]

 后记:

在sublime3中运行程序时报错

[Decode error - output not utf-8]

解决方式如下:

在插件目录下的User目录下新建一个文件python3.6.sublime-build,内容如下

{
    "cmd": ["python", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
    "encoding":"cp936"
}

 

socket编程

标签:decode   bin   import   finish   一个   cep   coding   python   uil   

原文地址:http://www.cnblogs.com/leomei91/p/7127679.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!