Я новичок здесь, а также новичок в программировании с помощью python как упражнение Мне нужно прочитать данные (lat & lon) из txt-файла со многими строками и преобразовать их в шейп файл с QGISЯ хочу передать данные из текстового файла в массив
После прочтения я найти способ извлечения данных в массив, а step1, но у меня есть SOEM вопросы ..
Я использую следующий код
X=[]
Y=[]
f = open('D:/test_data/test.txt','r')
for line in f:
triplets=f.readline().split() #error
X=X.append(triplets[0])
Y=Y.append(triplets[1])
f.close()
for i in X:
print X[i]
с ошибкой:
ValueError: Mixing iteration and read methods would lose data
Продвижение - это предупреждение о потере остальных строк, но на самом деле я их не хочу.
это, кажется, работает. теперь в моей попытке напечатать то, что я прочитал от , я получаю ошибку: TypeError: индексы индексов должны быть целыми, а не str в последней строке, где я пытаюсь распечатать X [i] Я знаю, что это строки и есть для преобразования в float, но используя X.append (float (triplets [0])) дайте мне ошибку: ValueError: недействительный литерал для float(): 49,24 –
@NasosGkimi 'for i in X:' будет непосредственно итератировать через элементы 'X'. То есть 'i' является строкой' X', а не индексом. Таким образом, вы можете просто «напечатать (i)' – Ramon
@NasosGkimi, если вы хотите итерации с помощью индекса - я действительно не вижу здесь смысла - вы можете использовать 'for i в диапазоне (len (X))' или 'для i, elem в перечислении (X)', где 'i' - это индекс, а' elem' - соответствующий строковый элемент. – Ramon