按照transcrypt“入门”文档中的说明,我在单独的目录中输入了示例'hello.html'和'hello.py'。
从命令行输入:“transcrypt -b -m hello.py”在错误消息中重新出现:“'transcrypt'未被识别为内部或外部命令, 可操作的程序或批处理文件。“
我正在使用python3.6,transcrypt安装在:C:\ program files \ python36 \ lib \ site-packages \ transcrypt
任何有关激活示例hello.html的帮助都将不胜感激。
答案 0 :(得分:1)
你可以尝试python -m transcrypt -b -m hello.py
并告诉我控制台输出是什么?
另外:您使用的是Windows,Linux还是OsX?
答案:Windows 10
[编辑1]
看起来Transcrypt安装在不同的Python发行版下。很高兴知道发生了什么,所以请随时通知我们。我的Windows 10计算机上也安装了几个Python,确实令人困惑。
[编辑2]
另一种可能性是手动安装(尽管它并不优雅......)。来自文档
http://www.transcrypt.org/docs/html/installation_use.html#installation-troubleshooting-checklist
或者,对于Windows或Linux下的手动安装,请按照 以下步骤:
- 下载Transcrypt zip并将其解压缩到任何您喜欢的地方
- 将../Transcrypt-/transcrypt添加到您的系统路径
- 要启用缩小功能,还必须安装Java Runtime Environment 6或更高版本
- 注意如果手动安装Transcrypt,则通过键入run_transcrypt而不是transcrypt来启动Trancrypt。这允许一个点子 安装了Transcrypt并手动安装了Transcrypt 并排选择
BTW感谢Github的建议。我们将调查它并尝试在这一点上改进文档。为每个平台制定防弹安装程序似乎非常困难。
答案 1 :(得分:1)
您可能还会发现使用python3内置的虚拟环境更容易,因此您一次只能将Transcrypt和其他python模块安装到一个项目文件夹中。它比起初听起来要容易得多。
以下是如何在Windows 10上执行此操作。
mkdir mynewproject
cd mynewproject
py -3 -m venv myvirtualenv # installs venv files into myvirtualenv
myvirtualenv\Scripts\activate # activates the virtual env
py -3命令使用python windows启动程序使用最新版本的python 3.启动程序在Pep 397和docs are here中定义。
激活虚拟环境后,提示将更改为显示。之后任何“点”安装'命令会将软件包安装到' myvirtualenv'而不是系统范围的位置。如果您想停用它,只需输入'停用'或关闭shell窗口。你也可以使用' python'从虚拟环境中引用python3。这使许多人免于疯狂。
答案 2 :(得分:1)
如果这有助于其他新手。设置transcrypt时遇到的一些问题。
路径问题:我在不同的文件夹中有多个版本的python:\ python26,\ python27和\ Program Files \ python36。
尽管设置了包含python36发行版的环境路径,但这引起了各种各样的悲痛。我通过重命名其他版本\ python26x和\ python27x来修复此问题。如果我需要使用它们,这会使这些发行版完好无损,但是阻止系统找到它们。因此,它只发现了python36
我之前提到的py -3并没有完全解决多个发行版问题。
在这样做之后,我重新安装了transcrypt,它似乎没问题(有点像:继续阅读)
第二个问题正在尝试运行示例hello.py。我试过“transcrypt -b hello.py”并得到“'transcrypt'无法识别..”消息。
但这有效: python -m transcrypt -b -m hello.py
这是有效的,因为系统最终找到了正确版本的python,由于上述修复。
同样,尝试按文档中的建议运行示例hello.py会导致问题。 run_transcrypt -b hello.py
原因是run_transcrypt解析为“python $(dirname $ 0)/ main .py $ *”
但是,因为我在c:\ Program Files中安装了python v3.6,批处理文件run_transcrypt导致了这个输出: c:\ transcrypt> python C:\ Program Files \ Python36 \ Lib \ site-packages \ transcrypt__main __。py -b hello.py python:无法打开文件'C:\ Program':[Errno 2]没有这样的文件或目录
因此,我必须将程序文件放在引号中并以这种方式运行:
“C:\ Program Files” \ Python36 \ Lib \ site-packages \ transcrypt__main __。py -b hello.py
或者,如上所述:python -m transcrypt -b -m hello.py
我认为,对于那些在\ Program Files中安装了python的用户,而不是在c:\ python [x]
中,文档应该为此提出警告标志。第三个问题使用代码将hello.py更改为“play around” - 我发现transcrypt \ demos \中的文件是只读的。解决这个问题: 1:我以管理员身份打开命令提示符 2:我运行了attrib命令来更改文件属性: “c:\ Program Files \ Python36 \ Lib \ site-packages \ transcrypt \ demos \ hello> attrib -r -s -a hello.py”
(如果不以管理员身份执行此操作,则会收到拒绝访问的消息)
整个练习造成了几个小时的徒步和后退,但现在似乎情况好转了。