Проблема перебора изображений в Python 3 - PullRequest
0 голосов
/ 11 октября 2018

Я пытаюсь перебрать некоторые изображения и вызвать метод для них.Фактический метод не имеет отношения к моей проблеме, поэтому я попытался привести минимальный пример своей проблемы ниже:

    df = pd.read_csv('csv_file.csv')
    for index, row in df.iterrows():
 -->    with open('ImagesFolder\\' + df.LocalImage, 'rb') as images_file:
        callMethod()

Ошибка в строке «с» (см. Стрелку).

TypeError: expected str, bytes or os.PathLike object, not Series

Это должно быть открытие локального изображения с именем, полученным из файла CSV, и вызов метода.Вместо этого «с» вызывает вышеуказанную проблему.

Может кто-нибудь помочь, пожалуйста?

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Согласен с @ DeepSpace.

Вы также можете преобразовать Series в String с помощью

df.LocalImage.to_string(index=False)
0 голосов
/ 11 октября 2018

У вас есть for index, row in df.iterrows(), но на каждой итерации вы используете весь столбец \ Series (df.LocalImage) для генерации пути к файлу.

Что вы должны сделать вместо этого:

for path in df.LocalImage:
    with open('ImagesFolder\\' + path, 'rb') ...

Или еще лучше, используйте os.path.join:

for path in df.LocalImage:
    with open(os.path.join('ImagesFolder', path), 'rb') ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...