Предоставьте исходные данные для моделей Django из txt-файла
У меня есть файл .txt с 3 колонками (долгота, широта, расстояние) и 40 миллионами строк.
Это первые строки файла.
-179.98 89.98 712.935
-179.94 89.98 712.934
-179.9 89.98 712.933
-179.86 89.98 712.932
-179.82 89.98 712.932
-179.78 89.98 712.931
-179.74 89.98 712.93
-179.7 89.98 712.929
-179.66 89.98 712.928
-179.62 89.98 712.927
Есть ли способ предоставить эти 40 миллионов строк в качестве исходных данных для этой модели Django?
from django.db import models
class Location(models.Model):
longitude = models.FloatField()
latitude = models.FloatField()
distance = models.FloatField()
Это полностью непроверенный код, но вы можете попробовать что-то вроде:
import os
from your_app.models import Location
with open('path/to/your_text_file.txt') as file:
data = file.readlines()
for line in data:
coords_and_dist = line.split(' ')
try:
Location.objects.create(longitude=float(coords_and_dist[0]),
latitude=float(coords_and_dist[1]),
distance=float(coords_and_dist[2])
except:
pass
Вы можете столкнуться с некоторыми проблемами производительности и памяти при 40 миллионах строк, я не запускал что-то подобное на текстовом файле такого размера.