20194115 实验三《Python程序设计》实验报告”

# 20194115 2019-2020-2 《Python程序设计》实验x报告


课程:《Python程序设计》
班级: 1941
姓名: 刘奕辉
学号:20194115
实验教师:王志强
实验日期:2020年5月23日
必修/选修: 公选课

## 1.实验内容
创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。


## 2. 实验过程及结果

客户端具体代码如下

 

#客户端

import os.path
import socket
import base64

os.chdir(r"C:\Users\桌边有只黄风怪\Desktop\1941")
k = open(r"C:\Users\桌边有只黄风怪\Desktop\1941\20194115.txt","a")
text = input("请输入写入并传输的内容:")
k.write(text)
k.close()
print("文件已保存为20194115")
k2 = open(r"C:\Users\桌边有只黄风怪\Desktop\1941\20194115.txt","r")
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("127.0.0.1",8796))
str = k2.read()
str1 = str.encode(encoding="utf-8", errors="strict")
str2 = base64.b64encode(str1)
s.sendall(str2)
data = s.recv(1024)
print(data.decode())
s.close
k2.close()

 

 

 服务端具体代码如下

#服务端

import base64
import os.path
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("127.0.0.1",8796))
s.listen()
conn,address = s.accept()
data = conn.recv(1024)
data1 = base64.b64decode(data)
print("收到来自",address,"的加密信息:",data.decode())
print("解密后的信息保存为20194115")
text = str(data1.decode()).encode()
print(text)
conn.sendall(("信息接收完毕:"+str(data1.decode())).encode
os.chdir(r"C:\Users\桌边有只黄风怪\Desktop\1941")
k = open(r"C:\Users\桌边有只黄风怪\Desktop\1941\20194115.txt","ab")
k.write(text)
k.close()
s.close()

 

 

## 3. 实验过程中遇到的问题和解决过程
- 问题1:想将文件重命名保存结果却设置成了打开新名字文件导致客户端运行多次失败
- 问题1解决方案:删减了不必要的重命名步骤,对文件进行修改
- 问题2:我,丧心病狂的我,妄图用idle同时运行服务端与客户端
- 问题2解决方案:还是VMware香,唉~


## 其他(感悟、思考等)
避免那么偏执,随便一改就硬运行,哈哈哈哈哈哈

 

posted @ 2020-05-23 22:24  20194115刘奕辉  阅读(218)  评论(0编辑  收藏  举报