PTVS:如何在第二个项目的一个项目中引用或使用Python源代码

2024-05-15 06:00:45 发布

您现在位置:Python中文网/ 问答频道 /正文

在带有ptv的Visual Studio中,我有两个独立的Python项目,一个包含名为lib.py的Python源文件,用作函数库,另一个是使用库中函数的main。我正在使用main中的import语句引用库项目中的函数,但得到以下错误:

No module named lib

我主要使用Visual Studio在F#中编程,所以我的想法是添加对其他.NET项目的引用。

我怎么用Python的方式来完成这个任务?


Tags: 项目函数nopyimportmainlib错误
3条回答

或者可以在代码中使用以下命令执行此操作:

sys.path.append("search path")

这样代码就可以在IDE之外运行。

对于一个非常具体的场景,除了验证的答案之外,我只想添加下面的内容。

我最近被要求修复操作系统在工作机器上遇到的相同问题,该机器最近已将用户帐户迁移到新域。

设置: Visual Studio 2013版 PTVS 2.2.30718型 水蟒3.5

基本上,Anaconda是为localmachine/UserA安装的。

用户迁移到新域(new domain/UserA)后,必须通过单击“查看其他Windows”和“Python环境”,从VS2013中更新Python环境。

设置之后,python脚本将按预期运行,尽管没有任何搜索文件夹引用可以工作。然后将它们移除并重新添加,但没有效果。

还尝试了其他各种方法,包括建立全新的项目,并使用搜索路径将它们链接起来,但都没有成功。

唯一解决问题的方法是在用户帐户之外重新安装Python环境(在我的例子中是Anaconda3)(在安装过程中单击“for all users,using administrator privileges”选项)。

然后我重新启动、删除并重新添加搜索文件夹,python按预期工作,包括所有搜索路径。

我希望这能帮助一些人,因为我只是浪费时间解决它。。。

D:)

Python不像.NET那样使用引用,而是使用搜索的路径。需要修改搜索路径以包括包含源文件的目录。见:The Module Search Path

在Visual Studio中使用Solution Explorer查看项目时,会显示每个项目的Search Paths

enter image description here

要修改搜索路径:

获取包含要导入的源代码的Python文件的目录。

例如lib.py

在解决方案资源管理器中,右键单击lib.py,然后选择Copy Path

enter image description here

现在对于将导入模块的项目
e、 g.ConsoleDriver_Python

右键单击Search Paths,然后选择Add Folder to Search Path...

enter image description here

显示“选择文件夹”对话框

enter image description here

右键单击并从剪贴板粘贴到路径中。还可以通过删除文件名将其更改为目录。

enter image description here

单击Select Folder

现在检查项目以确保Search Path已更新。

enter image description here

现在应该清除导入错误。

相关问题 更多 >

    热门问题