Python - 自定义模块并导入

学到模块这一节,动手练习的时候还是出现了错误,但是出现错误不可怕,动手解决就是了!

在一个目录下我新建了一个add文件夹,用来存放我定义的add2numbers.py这个模块,然后把调用的文件定义在了同目录下的另外一个文件夹下,命名为use_add.py。接下来就是写代码调用了。

一开始这么写的:

from add.add2numbers import add2numbers

print(add2numbers(22, 11))

一运行,报错了:

Traceback (most recent call last):
  File "C:\Users\mobikok\Desktop\pythonlearn\leetcode\use_add.py", line 4, in <module>
    from add.add2numbers import add2numbers
ModuleNotFoundError: No module named 'add'

然后打开搜索引擎,键入 python 错误名(比如这里的ModuleNotFoundError),原来默认是会在当前文件夹下寻找,找不到自然就报错了,那要让它成功调用,就要指定一个路径让它去找,在use_add.py文件中加上以下代码:

# 引入sys模块,并添加上级目录的路径
import sys
sys.path.append('../')

# 然后通过 FileName.modulename 来找到需要引入的模块名
# 最后用 import 导入具体的方法或者属性
from add.add2numbers import add2numbers

print(add2numbers(22, 11))

运行use_add.py,发现add文件夹下多出来一个_pycache_文件夹,这是因为:

python解释器会将 *.py 脚本文件进行编译,并将编译结果保存到__pycache__目录中。
下次再执行工程时,若解释器发现这个 *.py 脚本没有修改过,就会跳过编译这一步,直接运行以前生成的保存在 __pycache__文件夹里的 *.pyc 文件。

这样工程较大时就可以大大缩短项目运行前的准备时间;如果你只需执行一个小工程,没关系 忽略这个文件夹就行。

参考链接:运行Python脚本时生成的__pycache__文件夹_不眠旅行-优快云博客_pycache

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值