相关疑难解决方法(0)

当模块名称中包含" - "破折号或连字符时,如何导入模块?

我想导入foo-bar.py.这有效:

foobar = __import__("foo-bar")
Run Code Online (Sandbox Code Playgroud)

这不是:

from "foo-bar" import *
Run Code Online (Sandbox Code Playgroud)

我的问题:有什么方法可以使用上面的格式,即from "foo-bar" import *导入一个包含其中的模块-

python import module hyphen

160
推荐指数
5
解决办法
7万
查看次数

尝试导入时,可以在Python文件中使用破折号吗?

基本上我有一个python文件,如:

python-code.py
Run Code Online (Sandbox Code Playgroud)

并使用:

import (python-code)
Run Code Online (Sandbox Code Playgroud)

解释器给我语法错误.

关于如何修复它的任何想法?破折号是否在python文件名中是非法的?

python naming

132
推荐指数
6
解决办法
6万
查看次数

python和__import__的问题

对于通用标题很抱歉,一旦我理解了我的问题的根源就会改变它我有以下结构:

foo/
foo/__init__.py
foo/bar/
foo/bar/__init__.py
foo/bar/some_module.py
Run Code Online (Sandbox Code Playgroud)

当我尝试通过这样做导入some_module时:

from foo.bar import some_module
Run Code Online (Sandbox Code Playgroud)

它就像一个魅力.但这对我没有好处,因为我只知道要在运行时导入的模块的名称.所以,如果我尝试:

from foo.bar import *
mod=__import__('some_module')
Run Code Online (Sandbox Code Playgroud)

我收到一个错误.难道我做错了什么?有一个更好的方法吗?为什么会这样?

这是为什么?我不太确定我完全理解python包背后的概念.我认为它们等同于java的包,因此

python import

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

标签 统计

python ×3

import ×2

hyphen ×1

module ×1

naming ×1