当前位置: 首页 > 面试题库 >

如何在Google Colab中导入自定义模块?

温亮
2023-03-14
问题内容

我有一个名为imutils.py的文件,只有一个定义,即abc(),它返回2个整数的总和。

现在,我想在单独的collab文件中使用此定义,但是我无法使用。

我使用的html" target="_blank">方法是先将文件imutils.py上传到驱动器,然后将其导入并使用定义。错误提示模块’imutils’没有属性’abc’

要上传,我首先使用2种方法:首先,我使用驱动器GUI上传,然后我也使用代码尝试了上述方法。两种情况均成功上传

from google.colab import files
files.upload()

问题答案:

如果您的Python文件位于云端硬盘中,则挂载云端硬盘可能比上传文件更简单,例如,

from google.colab import drive
drive.mount('/content/gdrive')

然后,如果您有一个模块,可以像这样导入它:

https://colab.research.google.com/drive/1uvHuizCBqFgvbCwEhK7FvU8JW0AfxgJw

笔记本的内容如下:

在浏览器中转到以下URL:https
:
//accounts.google.com/o/oauth2/auth?client_id=947318989803-6bn6qk8qdgf4n4g3pfee6491hc0brc4i.apps.googlesusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0
email%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdocs.test%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive%20https%3A%2F%2Fwww.googleapis.com%2Fauth%
2Fdrive.photos.readonly%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fpeopleapi.readonly&response_type
=
code


输入您的授权码:

··········

安装在 /content/gdrive

我碰巧.py在云端硬盘中有一个现有文件。

!ls /content/gdrive/My\ Drive/*.py
>>> /content/gdrive/My Drive/mylib.py

!cat '/content/gdrive/My Drive/mylib.py'

def MyFunction():
    print ('My imported function')

# We'll need to update our path to import from Drive.

import sys
sys.path.append('/content/gdrive/My Drive')

# Now we can import the library and use the function.

import mylib
mylib.MyFunction()


 类似资料:
  • 我想在任何目录的任何脚本中导入自定义编写的函数,就像在任何脚本中导入请求模块一样。我正在运行Ubuntu和Python 3.9 编辑:我按照本教程完成了我的要求-https://packaging.python.org/tutorials/packaging-projects/

  • 在本教程之后,我在数据库中的集群上上传了一个jar库,但是我无法从数据库笔记本中导入该库或使用该库的方法。我无法找到解决此主题的论坛或留档,所以我不确定此时是否可能。 我可以在Database ricks中将jar文件作为作业运行,只是无法将jar库导入Notebook以从那里运行它。 我还尝试使用%sh魔术命令运行jar文件,但收到以下:

  • 问题内容: 在自定义的Wicket类中,与下面的类似,我使用的是应由Spring注入的服务bean,如通过SpringBean批注定义的(来自wicket- spring项目)。 但是,这是行不通的:NullPointerException失败,因为由于 某种原因Spring尚未注入该bean 。 奇怪的是,我在Wicket页面上使用了与匿名内部类完全相同的Model代码,并且在那里没有问题。 我

  • 我尝试在Google Cloud数据流中运行Apache Beam管道(Python),由Google Cloud Coomposer中的DAG触发。 我的dags文件夹在各自的GCS桶中的结构如下: setup.py是非常基本的,但是根据Apache Beam文档和SO上的答案: 在DAG文件(dataflow.py)中,我设置了选项并将其传递给Dataflow: 在管道文件(pipeline.

  • 问题内容: 我是Java的新手,但我一直在网上寻找解决方案,但似乎都没有用。请帮我。 我有两个文件。其中之一是包含主要功能的java文件。在里面: 使用该命令,我想创建一个新对象,该对象是一个名为的单独文件中的类。但是Java无法识别VaporVisitor是什么,大概是因为它不知道存在(它在同一目录中)。我试图使它们成为同一程序包的一部分,放入不同的程序包中并导入…,但所有这些都失败了。谁能给我

  • 问题内容: 在PyCharm中,我添加了Python环境。然而, 失败作为未定义的引用。但是,它在命令行的Python解释器中运行良好。 GNURadio可以在Pycharm外部使用python正常工作。一切都已安装并配置为我想要的方式。 格努拉迪奥位于 也: PYTHONPATH = / usr / local / lib / python2.7 / site-packages:/usr/loc