pycharm 如何保护python脚本不被编辑

gmxoilav  于 2023-03-02  发布在  PyCharm
关注(0)|答案(1)|浏览(389)

我正在构建一个python脚本供我的同事使用。
我希望我的同事能够运行查看脚本,但不能编辑脚本当他们从GitHub下载脚本时。我探索了一些选项,如questionthis article,但不幸的是没有一个是我需要的。
脚本功能如下所示:
1.在预先设定的假设和条件下,对一组数据进行一定的计算。
1.将结果写入Excel文件
1.报告结果。
现在,当我的同事使用此脚本时,我不希望他们编辑代码特别是预设的假设和条件部分,以便每个使用此脚本的人都使用相同的条件和假设来执行数据计算并报告结果。
考虑下面的例子:
假设您有一个名为my_script.py的脚本。
该脚本的内容是:

def modified_multiplication(a: int, b: int):
    result = ((a * b) * 0.5) + 2
    return result

现在,我想要的行为是,用户可以打开脚本并看到乘法被修改为首先乘以0.5,然后加上2,但不能将这些值更改为例如0.73
因此,我锁定了一种可以实现这种行为的方法。
如果有帮助的话,我正在使用python 3.10pycharm编辑器。

evrscar2

evrscar21#

我不知道你想做的事是否可行。
不幸的是,我不认为禁止对文件的写访问是可能的。虽然你可以在本地限制对文件的访问,但一旦其他用户在自己的计算机上拥有了该文件,他们就可以做任何他们想做的事情。
我想澄清一下,你的同事不能直接编辑github源代码(当然除非他们有权限),他们对文件的自定义副本做什么是他们自己的事情,不会为其他任何人改变。
但是,如果要防止用户编辑自己的本地文件,最好使用chmod

使用chmod

如果你使用的是linux(或者mac),你可以使用命令行工具chmod来编辑文件的属性,例如,要允许阅读和执行hello.py文件(但不允许写访问),请使用以下命令:

chmod a=rx hello.py

这对于共享服务器特别有用,因为您不希望用户意外地覆盖关键文件。

然而:如果用户将文件下载到本地机器上,他们总是可以使用chmod来反转命令并允许再次编辑,这不会阻止开发人员编辑文件的本地副本。

反转chmod

如果要使文件再次可编辑,请使用以下命令:

chmod a=rwx hello.py

相关问题