我有一台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?无论如何也可以解决这个问题吗?
答案 0 :(得分:20)
您会混淆两种引用可执行文件的方法。
/usr/local/bin
位于您的路径中,django-admin.py
被标记为可执行文件,因此您可以在没有初始python
的情况下引用它:
django-admin.py startproject myproject
当你从python
开始时,就是说#34;用这条路径上的脚本启动Python"。因此,如果您尝试启动的脚本不在当前目录中,则需要传递完整路径。
答案 1 :(得分:4)
python django-admin.py
- Python在当前工作目录中执行文件django-admin.py
。
如果您将/usr/local/bin
添加到PATH
环境变量中,则只需发出django-admin.py
而不是python /usr/local/bin/django-admin.py
。
检查PATH是否包含/usr/local/bin
echo $PATH
如果变量中没有/usr/local/bin
,请添加:
export PATH=$PATH:/usr/local/bin # sh, ksh, bash, ..
set path = ($path /usr/local/bin) # csh
答案 2 :(得分:4)
在没有python的情况下使用django-admin.py startproject
。
您不需要将{python与django-admin.py startproject
一起使用,它应该可以在任何目录中使用。仅在Windows上,您需要指定完整路径。
django
运行admin
中python interpreter
的{{1}}脚本。
答案 3 :(得分:1)
我在使用不同的python脚本时遇到了类似的问题。添加shebang
#!/usr/bin/env python
位于脚本的顶部并按照我的路径操作,并允许我直接调用它,如script.py
而不是python full/path/2script/script.py
答案 4 :(得分:0)
转到/ usr / local / bin并将'django-admin.py'的权限更改为不可执行,然后一切正常。
答案 5 :(得分:0)
我有同样的问题,我确实检查了我的/ usr / local / bin但django-admin丢失了,而不是在/ usr / bin中。
后来我通过在workspace目录中执行命令尝试了下面的命令,并为我创建了它。
python / usr / bin / django-admin startproject projectname
/ usr / bin / django-admin startproject projectname
答案 6 :(得分:0)
<强>问题:强>
python:无法打开文件'django-admin.py':[Errno 2]没有这样的文件或目录
原因:我们在记事本和编写器中编写python代码时出现此错误将其保存为.py扩展名。但命令行会将其视为.py.txt
解决方案:只需键入python并将上述文件拖到cmd提示符中即可。然后按回车。
然后确定你明白了。
答案 7 :(得分:0)
尝试使用django-admin.py startproject youproname
当我在ubuntu中安装django时也遇到了同样的问题,只需使用上面的一个就可以了