Я определил функцию в Python, которая читает данные из несортированного текстового файла, сортирует содержимое по возрастанию.Затем я прошу функцию вернуть окончательную переменную.
Когда я вызываю функцию как часть другого скрипта, вывод функции находится в «несортированном» состоянии.
def read_file(my_file):
import numpy as np
initial_data =[]
A = []
B = []
C = []
D = []
with open(my_file) as f:
for num, row in enumerate(f):
initial_data.append(row[:])
lines = row.strip()
columns = lines.split()
if num > 11:
A.append(float(columns[0]))
B.append(float(columns[1]))
C.append(float(columns[2]))
D.append(float(columns[4]))
data = np.vstack((A,B, C,D)).T
data= data[np.argsort(data[:,0])]
return(data)
Когда я запускаю этот скрипт один, окончательный data
отсортировано по data[np.argsort(data[:,0])]
.
Но когда я это сделаю:
new_data = read_file(my_file)
new_data
не отсортировано.
РЕДАКТИРОВАТЬ: Яиспользуя Python 3, my_file
представляет собой простой текстовый файл (.txt)