0

我将Fabian Vogt 的 micropython端口上传到我的 TI Nspire CX CAS 中,并附有几个 *.py.tns 文件来尝试。我找不到加载/启动这些文件的方法。

由于 micropython 不包含 os 模块,我无法使用 os.chdir 更改当前目录并从 python shell 加载 *.py 文件。我尝试从 python shell: open("documents/mydirectory/myfile")
使用不同的扩展名 .py 或 .py.tns,但没有成功。

我认为 Nspire 也没有类似终端命令行的东西。

谢谢你的帮助,

4

1 回答 1

2

有两种方法可以做到这一点,一种简单的方法,一种乏味的方法。

1. 映射.pymicropython你的 ndless.cfg

ndless.cfg应该在/documents/ndless/ndless.cfg

像这样:

ext.xxx=program-name
ext.xxx=program-name
ext.txt=nTxt
ext.py=micropython
ext.xxx=program-name
ext.xxx=program-name

您可以通过使用 TiLP 或官方软件从您的计算机来回复制来编辑此文件,或者您可以使用nTxt在计算上对其进行编辑。(这需要稍微摆弄一下,ndless.cfg以便映射仍然存在以打开复制的文件ndless.txt)。

Ndless 应该附带一个ndless.cfg包含 nTxt 和一些流行模拟器的基本绑定的标准。如果您没有,请在此处获取标准的。它将扫描所有目录(至少/documents/*,AFAIK)以查找程序。我发现删除与不在 Nspire 上的程序相关的行会减少加载时间。


2.在Python中运行文件的正确方法

要在 Python 中运行文件,您应该执行以下操作:

with open("/documents/helloworld.py.tns","r") as file:
    exec(file.read())

这将在执行后正确关闭文件,我注意到这在 Nspire 上非常重要,因为之前让文件保持打开状态给我带来了麻烦。当然,如果您愿意,您可以exec(open("...","r").read())自己关闭文件,然后自己处理,但请注意:如果您忘记了,可能会发生坏事。

此外,您必须记住添加前导/.tns扩展名,否则会发生奇怪的事情,尤其是在写入文件时。


就是这样!如果需要,请随时提出更多问题,我会关注ti-nspire标签。

(刚刚意识到这个问题已经很老了,但我想它仍然可能对其他几个月后在试图解决问题时遇到空问题的人有所帮助:P)

于 2018-02-22T19:26:17.717 回答