python: не удается открыть файл 'django-admin.py': [Errno 2] нет такого файла или каталога

у меня есть mac, и я начинаю работать над django. Когда я пытаюсь сделать проект на терминале пишу

python django-admin.py startproject myproject

Я получаю эту ошибку

python: can't open file 'django-admin.py': [Errno 2] No such file or directory

пока я искал помощь, одно решение предложило написать тип django-admin.py чтобы получить местоположение django-admin.py и используй это.

поэтому, когда я типа

python /usr/local/bin/django-admin.py startproject myproject
мой проект.

может кто-нибудь сказать, почему мне нужно это сделать и почему я не могу написать просто django-admin.py? И есть ли способ обойти это?

8 ответов


вы путаете два способа ссылки на исполняемый файл.

/usr/local/bin находится на вашем пути, и django-admin.py помечается как исполняемый файл, поэтому вы можете ссылаться на него без начального python:

django-admin.py startproject myproject

когда вы начинаете с python, то есть "запустите Python со скриптом по этому пути". Итак, вам нужно пройти полный путь, если сценарий, который вы пытаетесь запустить, не находится в вашем текущем каталоге.


python django-admin.py - Python выполнить файл django-admin.py на текущий рабочий каталог.

если добавить /usr/local/bin на PATH переменная окружения, вы можете просто выдать django-admin.py вместо python /usr/local/bin/django-admin.py.

  1. проверьте, содержит ли путь /usr/local/bin

    echo $PATH
    
  2. если нет /usr/local/bin в переменной добавьте следующее:

    export PATH=$PATH:/usr/local/bin  # sh, ksh, bash, ..
    
    set path = ($path /usr/local/bin) # csh
    

использовать django-admin.py startproject без питона.

вам не нужно использовать python с django-admin.py startproject, Он должен работать из любого каталога. Только в windows необходимо указать полный путь.

django работает admin скрипт python interpreter в своем path.


у меня была аналогичная проблема с другим скриптом python. Добавление shebang #!/usr/bin/env python в верхней части сценария и имея его мой путь сделал трюк и позволил мне вызвать его непосредственно, как в script.py, а не python full/path/2script/script.py


перейдите в /usr / local / bin и измените разрешение 'django-admin.py" как неисполняемый, тогда все должно работать нормально.


У меня была та же проблема, я проверил свой /usr/local/bin, но django-admin отсутствовал, вместо этого он был в /usr/bin.

позже я попробовал ниже команды, выполнив команду в каталоге рабочей области, и она создала проецируемый для меня.

python / usr/bin / django-admin startproject имяпроекта

/ usr/bin / django-admin startproject имяпроекта


:

python: не удается открыть файл 'django-admin.py': [Errno 2] нет такого файла или каталога

причина: мы получаем эту ошибку, когда пишем код python в блокноте и сохраняем его как .py расширение. Но командная строка будет относиться к нему как .py.txt

устранение: просто введите python и перетащите вышеуказанный файл в приглашение cmd и нажмите enter.

тогда конечно понятно.


для пользователей windows, просто сделайте django-admin startproject myproject использовать Django-admin.инструмент exe.