#python #numpy #split #attributeerror #numpy-stl
#python #numpy #разделение #ошибка атрибута #numpy-stl
Вопрос:
Я попытался отредактировать один файл stl. В связи с этим я прочитал файл stl, используя numpy-stl. Теперь, когда я пытаюсь разделить присутствующие в нем строки, он показывает мне ошибку как:
объект ‘numpy.ndarray’ не имеет атрибута ‘split’
Как это преодолеть? Ниже приведен код.
import numpy as np
import stl
from stl import mesh
lines = mesh.Mesh.from_file('mesh.stl')
count = 0
for line in lines:
if line.split()[0] == "solid":
repl = line.split()[1]
print(repl)
Любые предложения будут оценены.
С уважением, Сунаг Р. А.
Ответ №1:
Это потому, что вы получаете объект ndarray, к которому применяете разделение.
Просто преобразуйте его в строку (с помощью метода tostring()) перед выполнением, и он будет работать.
Комментарии:
1. Не могли бы вы, пожалуйста, пролить свет на то, как это сделать? Я имею в виду, как преобразовать объект ndarray в строку?
2. Я отредактировал вопрос. Просто используйте line.tostring()
3. * отредактировал ответ
4. Спасибо @Lore. Я попробовал это сейчас, в нем говорится: «Объект сетки не имеет атрибута ‘tostring’. Я что-то упускаю в этом?
5. Используйте line.tostring(), а не lines.tostring()
Ответ №2:
просто используйте str(line)
tostring(line)
метод instead