我正在编写一个python脚本,它的一个功能应该是它会自动将自己添加到windows启动文件夹中。
现在我写了一些函数来为我做这件事,但它们都依赖于多个变量,这些变量在初始分配后不应该改变。但我不确定在哪里存放它们。
这是代码片段:
def write_shortcut():
autostart_folder = winshell.startup()
path = os.path.abspath(__file__)
target_folder = autostart_folder + r"\proxy-changer.lnk"
working_directory = path.replace(r'\proxy-changer.pyw', '')
with winshell.shortcut() as shortcut:
shortcut.path = path
shortcut.working_directory = working_directory
shortcut.description = "Shortcut to the proxy-changer script"
shortcut.write(target_folder)
def del_shortcut():
os.remove(target_folder)
def check_shortcut():
if (config.getboolean('DEFAULT','RunOnStartup') == 1 and not
os.path.islink(target_folder)):
write_shortcut()
elif (config.getboolean('DEFAULT','RunOnStartup') == 0 and
os.path.islink(target_folder)):
del_shortcut()
else:
pass
第 2 到 5 行是我正在谈论的变量。目前它们处于第一个功能中,但其他功能则无法访问它们。现在我知道存在类并且类中的所有方法都可以访问类中的变量,但我不确定这是否是正确的方法,因为它只包含一个对象,而不是多个。
在功能之外,甚至在定义它们之前,看起来也不是很干净。而且我不确定是否要让它们全球化。
我想我一般都了解课程,但不是所有内容,所以如果很明显课程是正确的方式,那么我很抱歉。我刚刚听说类经常在不需要时使用(停止编写类!),所以我试图避免犯同样的错误。我是 python 初学者,请随时批评我的代码风格或告诉我哪里错了/可以改进它。
提前致谢。