Довольно новый на python, и я борюсь с чем-то. Я вырываю кучу точек данных из файла CSV, одна точка - дата (мм/дд/гггг). Я беру эту дату и разбиваю ее на каждый «/», чтобы разделить соответствующие части на отдельные списки. Вот где у меня проблемы. В конце моего кода, когда я пытаюсь распечатать каждый индекс списка за пределами нуля, я получаю эти ошибки. В конечном итоге то, что я хочу сделать с этими тремя отдельными объектами даты, добавляет их в виде подписок в конец моего существующего списка ptInfo (ptInfo [8], ptInfo [9], ptInfo [10]). Как я могу это сделать?Назначение новых индексов списка в существующий список
Ошибка выполнения (IndexOutOfRangeException): индекс вне диапазона: 1 Traceback: линии 51, в сценарии
Ошибка выполнения (IndexOutOfRangeException): индекс вне диапазона: 2 Traceback: линии 52, в сценарии
#import Points from CSV
import rhinoscriptsyntax as rs
import sys
import datetime
input_file = 'C:\Users\kenma\Dropbox (Personal)\Solo Work\Projects\Sweet Crude\Work\data\prepared_uic_data.csv'
#Init Lists
a = []
apis = [] #0
operators = [] #1
operatorNums = [] #2
wellTypes = [] #3
dates = [] #4
lats= [] #5
longs = [] #6
zoneAreas = [] #7
dateFrag = []
dateM = [] #8
dateD = [] #9
dateY = [] #10
file = open(input_file, 'r') #open file for reading
lines = file.readlines() #read lines into variable
file.close() #close the file
del lines[0] #delete first header line
for line in lines:
#remove the /n
line = line.strip()
# split line by the column
ptInfo = line.split(',')
a = ptInfo
# split line data into individual arrays
apis.append(ptInfo[0])
operators.append(ptInfo[1])
operatorNums.append(ptInfo[2])
wellTypes.append(ptInfo[3])
dates.append(ptInfo[4])
lats.append(ptInfo[5])
longs.append(ptInfo[6])
zoneAreas.append(ptInfo[7])
dateFrag = ptInfo[4].split("/")
print(dateFrag[0])
print(dateFrag[1])
print(dateFrag[2])
Ну, по-видимому, ptInfo [4] фактически не имеют каких-либо косые черты в нем. Возможно, вы должны были напечатать это, вместо того, чтобы пытаться распечатать несуществующие результаты раскола. – jasonharper
Это не так. Я распечатал его, поэтому я раскололся. Вот распечатка из ptInfo [4]: 11/27/2002 11/13/2000 08/19/1988 12/15/2003 07/11/1985 11/27/2002 11/27/2002 09/17/1996 05/06/2010 06/25/1990 07/14/1999 05/27/1998 03/13/2006 03/08/2006 05/23/1994 – greyBow
Вы не указываете, почему вы нарушаете дату на отдельные части. Поскольку дата - ОДНА вещь, обычно лучше рассматривать ее как таковую. Почему вы нарушаете дату на отдельные части. –