python socket

简单的socket:

  server 端:

# -*- coding: utf-8 -*-
import socket

server = socket.socket()

#绑定监听的端口
server.bind(('localhost',6969))

#监听
server.listen()
print("1")
while True:
    #等待接收数据, 返回连接 与 ip 地址
    conn,addr = server.accept()
     
    while True:
        #通过连接来取数据
        serverData = conn.recv(1024)
        
        print("recived :",serverData.decode())
        
        if not serverData:
                print("next.........")
                break
        
        #通过连接回复数据
        conn.send(serverData.upper())
        #如果文件过大, 可以使用sendall 方法, 这个方法会循环调用send
        #client.sendall(data)

server.close()

 

客户端:

# -*- coding: utf-8 -*-
import socket

'''
1. 想要传递中文,要对中文进行编码
client.send("网络".encode(encoding='utf_8', errors='strict')

'''

#声明协议类型,同时生成socket 连接对象
client = socket.socket()

#连接server 
client.connect(('localhost',6969))

while True:
    msg = input(">>:").strip()
    #发送数据
    # client.send(b"hello  World")
    #想要传递中文, 要对中文进行编码
    if msg=="": continue
    client.send(msg.encode(encoding='utf_8', errors='strict'))
    #如果文件过大, 可以使用sendall 方法, 这个方法会循环调用send
    #client.sendall(data)
    
    
    #接收返回数据, 参数是接收多少个字节
    data = client.recv(1024)
    
    print(data.decode())

client.close()

 

posted on 2017-12-04 10:04  gaizhongfeng  阅读(140)  评论(0编辑  收藏  举报