相关疑难解决方法(0)

从 Python 中的相邻文件夹导入模块

我想问一下是否有办法从与另一个文件夹相邻的项目中的文件夹中导入模块/函数。

例如,假设我有两个文件:

project/src/training.py
project/lib/functions.py
Run Code Online (Sandbox Code Playgroud)

现在这两个文件夹中都有__init__.py文件。如果我想导入functions.pytraining.py,它似乎没有检测到。我正在尝试使用from lib.functions import *.I 知道这在文件夹结构的上层起作用,我可以从脚本调用这两个文件,但是有没有办法在上面/侧面文件夹中执行文件?

python python-import python-3.x

2
推荐指数
1
解决办法
2795
查看次数

如何以自动方式在python中设置当前工作目录

如何将我的python文件"myproject.py"的当前路径设置为文件本身?我不想要这样的东西:

path = "the path of myproject.py"
Run Code Online (Sandbox Code Playgroud)

在mathematica我可以设置:

SetDirectory[NotebookDirectory[]]
Run Code Online (Sandbox Code Playgroud)

Mathematica中代码的优点是,如果我更改了Mathematica文件的路径,例如,如果我将其提供给其他人或者将其放在另一个文件夹中,我就不需要做任何额外的事情了.每次Mathematica自动将目录设置为当前文件夹.

我想在Python中使用类似的东西.

python directory

1
推荐指数
1
解决办法
4388
查看次数

UNIX/Python - 如何在没有互联网和 pip 的情况下使用 cx_Oracle

我的公司(还)不允许我们安装或升级 python3,也不允许我们在其服务器上安装 pip 模块。即使可以,机器也没有连接到互联网。但我们可以执行 python2 二进制文件

目标

cx_Oracle无需使用pip互联网即可使用该模块

暂定解决方法

我想到在我的计算机上安装 cx_Oracle 包,然后将安装的模块文件从我的计算机复制到服务器。

所以服务器 dev 文件夹看起来像这样(只列出有趣的目录和文件,省略__pychache__*.pyc其他无用的*.py文件):

|-- test_cx_oracle_in_local.py
\-- sqlalchemy/
    |-- connectors
    |-- databases
    |-- dialects
    |   |-- firebird
    |   |-- mysql
    |   |-- mssql
    |   |-- oracle
    |   |   |-- base.py
    |   |   |-- cx_oracle.py   <--- This is the interesting file
    |   |   |-- __init__.py
    |   |   \-- zxjdbc.py
    |   |-- postgresql
    |   |-- sqlite
    |   |-- sybase
    |-- engine
    |-- …
Run Code Online (Sandbox Code Playgroud)

python oracle cx-oracle python-import

1
推荐指数
1
解决办法
1675
查看次数

如果有重复的模块名称,Python 指定从哪个模块导入?

相关:从相对路径导入模块

dirA/
    A.py
    B.py
dirB/
    B.py

A.py
import B

# do blah
Run Code Online (Sandbox Code Playgroud)

我想让 A 导入 B。

由于两个目录都有 B.py,我如何指定 A 从 dirB 而不是 dirA 导入 B?

python

0
推荐指数
1
解决办法
1937
查看次数

在 python 中导入类型

我有一个名为的模块types,其中包含以下代码

def Hello():
    return "Hello World"
Run Code Online (Sandbox Code Playgroud)

但当我这样做时

>>> import types
>>> types.Hello()
Run Code Online (Sandbox Code Playgroud)

它给了我

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'Hello'
Run Code Online (Sandbox Code Playgroud)

这真让我吓坏了。

python import module

0
推荐指数
1
解决办法
1万
查看次数