Может кто-нибудь уточнить этот код, который я нашел?
import socket
import time
import matplotlib.pyplot as plt
time_start = 0
time_end = 0
time_dict = {}
time_list = []
def upload_file(file_name):
file_path = "client/" + file_name
with open(file_path,'rb') as f: # open file for reading only in binary format
while True:
l = f.read(BUFFER_SIZE) # read in at most 1024 bytes at once from f
while (l):
s.send(l)
time_list.append((time.time() - time_start)*(10**3))
# checking condition
if time_list[-1] == 0: # last element in time_list
a = 0
else:
a = (len(time_list)*(BUFFER_SIZE)) // time_list[-1]
if not time_dict.get(time_list[-1]):
time_dict[time_list[-1]] = a
l = f.read(BUFFER_SIZE)
# when there is no data
if not l:
f.close()
time_list.append((time.time() - time_start)*10**3)
duration_time = (time.time() - time_start)*10**3
print('time: start = ',time_start, ' end = ',time.time())
print('time: transfer_time = ', duration_time)
print("file uploaded and graph is shown below!!")
return time_dict
Должны ли значения time_start и time_end где-то увеличиваться? Что делает time_list и time_dict в этом коде et c.? Я знаю, что 10 ** 3 - это 10 ^ 3, а // - это деление по полу. 's' это сокет. На что именно отправляется?