多线程
threading.Thread参数:
target:线程执行方法
args:元祖形式传参
kwargs:字典格式传参
# -*- coding:utf-8 -*-
import time
import threading
def play(msg):
while True:
print(msg)
time.sleep(1)
def sing(msg):
while True:
print(msg)
time.sleep(1)
if __name__ == '__main__':
play_thread = threading.Thread(target=play, args=("唱跳~~~rap",))
sing_thread = threading.Thread(target=sing, kwargs={"msg": "唱歌~~~爱如火"})
play_thread.start()
sing_thread.start()
Socket
服务端
# -*- coding:utf-8 -*-
import socket
# 创建socket对象
socket_server = socket.socket()
# 绑定Ip与端口
socket_server.bind(("localhost", 8888))
# 监听端口
socket_server.listen(1)
# 获取连接对象与客户端地址信息
conn, address = socket_server.accept()
print(f"客户端信息{address}")
while True:
# 接收消息
data = conn.recv(1024).decode("UTF-8")
print(f"客户端发的消息{data}")
msg = input("请输入回复内容")
if msg == "exit":
break;
# 发送消息
conn.send(msg.encode("UTF-8"))
conn.close()
socket_server.close()
客户端
# -*- coding:utf-8 -*-
import socket
socket_client = socket.socket()
# 连接服务器
socket_client.connect(("localhost", 8888))
# 发送消息
socket_client.send("hello".encode("UTF-8"))
recv_data = socket_client.recv(1024)
print(f"服务端返回消息{recv_data.decode('UTF-8')}")
socket_client.close()