首页 > 解决方案 > Python - Visual Studio -> 跨文件编码问题 VS 项目

问题描述

我对 Visual Studio 界面和 python 编码有点陌生,在一些项目中闲逛并有一个问题:

--> 可以在一个文件中创建一个代码,例如创建应用程序的登录并验证凭据,存储凭据认证,然后使用存储在另一个文件中的这些凭据来验证它是否可以访问?

非常感谢您对这些问题的示例、建议和评论。

--> 此外,如果初始文件具有例如 SQL 连接,则在另一个文件中重用该连接,例如更新引用该连接的数据库中的记录?

标签: pythonvisual-studio

解决方案


这是一个非常开放的问题,但假设您是 Python 新手,我会尽力回答。您正在寻找的是python 中的模块。通过定义一个模块,例如sqlconnection.py,你可以使用类似的语法来导入这个模块

from . import sqlconnection

这告诉模块加载器sqlconnection在当前包中查找模块。Python 中的包是目录中的一组模块,其中包含一个名为__init__.py. 因此,在您的情况下,创建文件

__init__.py
credentials.py
sqlconnection.py
app_part1.py
app_part2.py

允许您重用模块中的 sql 连接和凭据。每次重新加载模块时都会重新评估模块级别的代码语句(模块导入不会重新加载模块 - 它只会在第一次引用模块时加载模块,因此分配例如当前连接意味着它将被重用跨模块)。

Python 是一种动态语言。模块中的构造(函数、类)之所以存在,是因为模块中有创建它们的代码。与 C# 或 Java 等静态语言不同,加载模块将运行代码来定义模块。因此,模块可能会被重新加载,最终会得到不同的变量实例。这通常是库开发人员关心的问题,而不是最终应用程序的开发人员(因为他们应该知道是否这样做reload())。


推荐阅读