transcrypt问题 - 无法运行示例程序

时间:2018-01-07 08:09:51

标签: transcrypt

按照transcrypt“入门”文档中的说明,我在单独的目录中输入了示例'hello.html'和'hello.py'。

从命令行输入:“transcrypt -b -m hello.py”在错误消息中重新出现:“'transcrypt'未被识别为内部或外部命令, 可操作的程序或批处理文件。“

我正在使用python3.6,transcrypt安装在:C:\ program files \ python36 \ lib \ site-packages \ transcrypt

任何有关激活示例hello.html的帮助都将不胜感激。

3 个答案:

答案 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 397docs 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”

(如果不以管理员身份执行此操作,则会收到拒绝访问的消息)

整个练习造成了几个小时的徒步和后退,但现在似乎情况好转了。