yemenchun1
2018-11-13 20:51:10 +08:00
我是这样做的:
1. 我用 Jupyter Notebook 写我要调用的功能, 但实现功能的函数本身写在 py 文件里.
2. py 文件用 Jupyter Notebook 的前端文本编辑器编辑, 虽然可以, 但功能有限, 补全, 批量修改都用不了; 用 SSH 和 Vim 虽然也可以, 但是相比常用的 Pycharm, Sublime Text, 少了一些直观的感受. 所以我在 Linux 的机器上开了一个 samba 的服务, 共享 Linux 的文件夹, 再在路由器开端口映射, 最后用 MacBook 的 Finder 连接服务器的功能加载这个远程文件夹, 这样就可以用 MacBook 的 Sublime Text 或其它文本编辑器实时的编辑了.
3. py 文件每次修改了以后, 在 Jupyter Notebook 执行程序块, 但 Jupyter Notebook 导入的还是老的 py 文件, 需要添加一行%load_ext autoreload 和%autoreload 2, 这样只有写新函数的时候才需要重新执行 import 的代码块, 其余时候直接执行 py 文件修改过的函数所在的代码块就可以了.
4. Dropbox 不是不行, 而是做不到实时修改实时变化, 因为 dropbox 的同步需要一定时间, 而 samba 就完美解决了这个问题, 因为你改的代码是在远程机器上的.
5. 代码同步的问题, 你在远程 Linux 机器调好以后, 开启 Dropbox. 这也仅仅是起到备份的功能而已.