#python #macos
#python #macos
Вопрос:
Подробные сведения:
Python 3.7.1, Mac OS High Sierra 10.13.6. Я использую IDLE и запускаю программу через терминал. Недавно я добился успеха с рукописными числами MNIST, и теперь я пытаюсь обучить генеративную состязательную сеть с моим собственным набором данных. Набор данных представляет собой папку с изображениями.
Ошибка:
Traceback (most recent call last):
File "Pride.py", line 29, in <module>
listing = os.listdir(path1)
FileNotFoundError: [Errno 2] No such file or directory: 'Users/darren/Desktop/Pride'
Я просмотрел другие темы по этой проблеме, но не понимаю, что не так с моим path, поэтому я приношу извинения, если моя ошибка вызвана чем-то простым. Файл Python, который я запускаю из терминала, и моя папка dataset находятся на моем рабочем столе.
Вот мой код до этого момента:
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation, Flatten
from keras.layers.convolutional import Convolution2D, MaxPooling2D
from keras.optimizers import SGD,RMSprop,adam
from keras.utils import np_utils
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
import os
import theano
from PIL import Image
from numpy import *
from sklearn.utils import shuffle
from sklearn.model_selection import train_test_split
# input image dimensions
img_rows, img_cols = 200, 200
# number of channels
img_channels = 1
#%%
# data
path1 = "Users/darren/Desktop/Pride" #path of folder of images
path2 = "Users/darren/Desktop/Prideresized" #path of folder to save images
listing = os.listdir(path1)
num_samples=size(listing)
print ("num_samples")
for file in listing:
im = Image.open(path1 '\' file)
img = im.resize((img_rows,img_cols))
gray = img.convert('L')
gray.save(path2 '\' file, "JPEG")
Комментарии:
1. Ваша
path1
переменная — это относительный путь. Вероятно, представление вашей программы о текущем рабочем каталоге не такое, как вы думаете. Начните с указания абсолютного пути, чтобы убедиться, что это работает. Это предложит решение проблемы. (И, ниже, вы уверены, что хотите обратную косую черту между папкой и именем файла?)2. Спасибо BoarGules. Почему там обратная косая черта? Я просто использую чужой код. Должен ли я удалить обратную косую черту? Редактировать: О, это должна быть косая черта, верно?
3. Для меня это похоже на специфичный для Windows код. Windows использует для разделения элементов имен файлов, где OSX использует / . Теперь Windows обычно достаточно яркая, чтобы перевести любое /, которое она видит в именах файлов, в , но я недостаточно знаю об OSX, чтобы сказать, можете ли вы положиться на что-то подобное. Независимый от платформы способ сделать это — использовать
os.path.sep
.
Ответ №1:
в Mac os, если вы сохраняете файл вашего набора данных или любой другой файл в папке documents, то код для пути к этому файлу может быть таким
melbourne_file_path = **'/Users/adi/Documents/Top250.csv'**
melbourne_data = pd.read_csv(melbourne_file_path)
melbourne_data.describe()
Ответ №2:
Если вы используете относительные пути (путь, который не начинается с /
), вам нужно изменить их, чтобы они соответствовали расположению вашего скрипта.
В вашем случае:
path1 = "Pride" #path of folder of images
path2 = "Prideresized" #path of folder to save images