Я использую Python 3, и я читаю файлы, которые состоят из нескольких строк, которые содержат текст и число вместе, и из определенной строки это только столбцы чисел, которые первоначально они также читаются как str после разбиения, которые я позже конвертируюих плавать.
данные выглядят так.Я также добавляю ссылку к образцу чисел
https://gist.github.com/Farzadtb/b0457223a26704093524e55d9b46b1a8
![enter image description here](https://i.stack.imgur.com/MbqXc.png)
Так что проблема в том, что для чтения у меня естьдва условия (на самом деле я хочу увеличить эти условия) с помощью try: кроме.но это работает только для разделения метода расщепления.но прежде чем начать расщепление, мне нужно удалить первые строки, содержащие текст.я знаю, что я должен использовать
, за исключением ValueError
, но это на самом деле не работает!
f = io.open(file, mode="r", encoding="utf-8")
#f=open(file,"r")
lines=f.readlines()
x=[]
y=[]
z=[]
for i in lines:
try:
a=[i.strip('\n')]
a1=[float(n) for n in a[0].split(',')]
atot.append(a1)
x.append(a1[3])
y.append(a1[2])
z.append(a1[1])
except :
a=[i.split('\n')]
a1=[float(n) for n in a[0].split()]
x.append(a1[3])
y.append(a1[2])
z.append(a1[1])
проблема в том, что, поскольку первые строки могут также начинаться с цифр, возможно, что первый параметр разделен и добавлен к "x" и "y", но я получаю ошибку для z
x=[float(i) for i in x]
y=[float(i) for i in y]
z=[float(i) for i in z]
Одна идея, которая приходит мне в голову, состоит в том, чтобы проверить, можно ли преобразовать строку в float без ошибок, а затем продолжить расщепление, но я не знаю, как это сделать