2016-05-01 3 views
0

, так что я буду, как и в глубину, насколько это возможно, вот моя проблема:Python - Каталог файлов Выпуск

Я использую команду turtle.addshape() добавлять изображения на черепахе. Для того, чтобы сделать это, я должен сделать turtle.addshape(C:\Users\Username Here\Desktop\Game\Images\an image.gif)

проблема с этим, что если бы я распространять свой файл, он будет искать C:\Users\Username Here\Desktop\Game

Я хочу, чтобы найти изображение, Wherever файл является и тот, кто использует его, например:

C: \ Users \ the computers user here \ where ever the file is located here \ Game \ Images \ в image.gif

Если вы можете помочь мне, пожалуйста делаете, это сводит меня CRAZY - Спасибо: D

+0

Используйте относительный путь. Поместите файл формы в тот же каталог, что и файл '.py', и используйте только имя файла. –

+0

Я мог бы это сделать, но я хочу, чтобы он был в организованных папках. –

+0

ОК, затем введите другой каталог с файлом '.py' и сохраните изображения там. Затем используйте относительный путь к этому каталогу. –

ответ

0

Возможно, вы ищете expanduser lib. Пожалуйста, чтобы попробовать это:

import os 

def find(name, path): 
    for root, dirs, files in os.walk(path): 
     if name in files: 
      return os.path.join(root, name) 

dir = find('image.gif', os.path.expanduser("~")) 

где os.path.expanduser ("~") представляет собой путь к "C: \ Users \ Имя пользователя Здесь". Так что потребуется некоторое время на поиск целого каталога. Пожалуйста, используйте более конкретный каталог, если это возможно, например:

dir = find('image.gif', "%s\%s" %(os.path.expanduser("~"), "MyProject\Images")) 

или использовать относительный каталог, если он достаточно хорош для вас.

0

Для этого вам необходимо использовать относительный путь из вашего каталога Game (при условии, что это рабочий каталог для вашей игры).

Например. «Game \ Images \ a image.gif»

Смежные вопросы