在python中,如何导入文件名以数字开头

基本上有一个名为的文件8puzzle.py,我想将该文件导入另一个文件(在同一文件夹中,因为提供了该文件,所以无法更改文件名)。无论如何,在Python中可以做到这一点吗?我尝试了通常的方式from 8puzzle import *,这给了我一个错误。


错误是:


>>> import 8puzzle

  File "<input>", line 1

    import 8puzzle

           ^

SyntaxError: invalid syntax

>>> 


一只萌萌小番薯
浏览 4998回答 3
3回答

大话西游666

你可以做puzzle = __import__('8puzzle')非常有趣的问题。我会记住不要用数字命名。如果您愿意import *-您应该查看此问题和答案。

侃侃无极

上面的答案是正确的,但是到目前为止,推荐的方法是使用import_modulefunction:importlib.import_module(name, package=None)导入模块。name参数以绝对或相对术语(例如pkg.mod或..mod)指定要导入的模块。如果名称是用相对术语指定的,则必须将package参数设置为要用作解析包名称的定位符的包的名称(例如,import_module('..mod', 'pkg.subpkg')import pkg.mod)。import_module()函数充当的简化包装 importlib.__import__()。这意味着该函数的所有语义均源自importlib.__import__()。这两个函数之间最重要的区别在于,它import_module()返回指定的程序包或模块(例如pkg.mod),而__import__()返回顶级程序包或模块(例如pkg)。如果要动态导入自解释程序开始执行以来创建的模块(例如,创建了Python源文件),则可能需要调用invalidate_caches()以便导入系统注意到新模块。__import__ 现在不推荐。importlib.__import__(name, globals=None, locals=None, fromlist=(), level=0)内置__import__()功能的实现。注意应该以编程方式导入模块,import_module()而不要使用此功能。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python