Я новичок в python и пытаюсь понять это весь день. У меня нет файл данных выложил, как показано ниже,Разделение столбцов файлов данных на отдельные массивы в Python
time I(R_stkb)
Step Information: Temp=0 (Run: 1/11)
0.000000000000000e+000 0.000000e+000
9.999999960041972e-012 8.924141e-012
1.999999992008394e-011 9.623148e-012
3.999999984016789e-011 6.154220e-012
(Примечания: Не пустой строки между каждой строкой данных.)
Я хочу построить данные с помощью функции Matplotlib, поэтому я нужен две отдельные столбцы в массивах.
я в настоящее время
def plotdata():
Xvals=[], Yvals=[]
i = open(file,'r')
for line in i:
Xvals,Yvals = line.split(' ', 1)
print Xvals,Yvals
Но очевидно, что его совершенно неправильно. Может ли кто-нибудь дать мне простой ответ на это, и с объяснением того, что именно означают линии, было бы полезно. Приветствия.
Редактировать: первые две строки повторяются по всему файлу.
Оператор splat не является частью функции 'zip' ... В противном случае это приятное решение. –
Это не работает: '.split()' - это строковый метод, а строки - список строк. Вам нужно 'Xvals, Yvals = zip (* (строка.split() для строки в строках)) 'или что-то. – DSM
Я получаю синтаксическую ошибку invaild, связанную с строкой «Xvals, Yvals = zip (* (lines.split())». Я использую python 3.2, если это что-то меняет. –