"所有模块"是确定的还是不确定的? 如果是确定的范围,现在的确都是这么做的。python作者认为"核心"的模块默认的确已经导入了,你不需要再import。 如果是不确定的范围。这个是做不到的。因为系统不知道有哪些,当然也无法检查自动导入"全"了没有。 全世界有海量的模块,每时每刻油冒出来很多新模块。自动导入所有模块必须先下载到本地。按目前的速度,先不说你存储够不够,电脑一直下载也赶不上新冒出来模块的速度。 当然可以导入所有,只是会比较慢,如果你要把程序打包,会发现文件很大。 import导入文件,本质上是把具备某些功能的代码模块拼接到你的代码上。而程序的运行,是要把代码读入内存中的,你导入越多,运行也就会消耗更多内存。 总而言之,你当然可以导入用不到的模块,只是你的代码在机器看来就会很大很长,而运行代码是需要解释每一行代码的,于是执行一个很大的文件就会很慢。 做什么事,就预准备适合做这些事的条件!更通俗地说,县官审案,闲杂人等不得入内 1.把所有模块都导入,那也太大了吧。特别如果你用pyinstaller打包的话,你会发现整个包特别的大,有一些根本没有使用的包我打包进去了。 2.把所有的包都导入进去的话,你会发现运行起来会比较慢 你给全世界运行你程序的都配上超算,不然可能会有点卡 用过MATLAB的话就知道用import多好 要是打印个hello world就把所有模块都导入,那python的启动速度得多慢? 导入模块这种东西,都是用哪个导哪个,哪能不用的也全搞进去。 何况模块会不断更新的,要添加新的咋办。 你吃饭为什么要点菜,炒一本不是更方便。 所以说你其实不懂程序方面的东西,导入是为了让程序只加载必须的库,举个栗子比如登录模块加载邮箱验证,密码复杂度检测就可以了。如果还加载了听歌模块肯定是没必要的,因为并不匹配场景需求。 过度加载只会增加程序复杂度,增加打包体积,以及读取时间。 你见过哪个语言是这样做的?