我想共享一个Google colab笔记本,但需要隐藏部分代码。是否可以将私有代码放在单独的.py或Colab笔记本中,然后将其导入,以便那些可以访问公共Colab笔记本的人看不到私有.py或Colab笔记本?
提前谢谢了。
并不是的; 您隐藏代码的能力仅与用户无法检查代码的能力一样好:
import some_file # your private .py
from inspect import getsource
print(getsource(some_file))
底线将打印文件的整个源代码-无论它是如何导入的。
如果您不希望您的用户知道或知道这一点(不是安全的选择),那么可以,您可以通过自我验证请求将导入运行到用户无法访问的存储(例如云端硬盘,Google Cloud Bucket) ,但这将涉及很多步骤(我不知道这些步骤)。
请参阅此SO,以获取有关隐藏代码的更多信息,以及使检查更加困难的一些特定方法。
更新:一种解决方法是在只读模式下共享,在该模式下可以执行但不能编辑单元格-有关几种方法,请参见此SO。请注意,这仍然不能使您的代码完全私有,但是链接中的某些方法可能很难规避(要求黑客入侵)-有效而成功。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句