Python import可变路径的类

本文介绍了一种解决Python中动态导入模块的方法,通过在运行时获取并添加模块路径到系统路径中,解决了因模块位置不确定导致的导入难题。

上班时间一老哥问我一个python上的问题。问题是酱紫的,他们组老大想让他用python处理一些json方面的问题,其中一个类A要调用另外一个类B的与json处理有关的函数,但是这个类B居无定所,没有一个固定的地方,他就不知道怎么把这个类B import进入A中的。实际上方法很简单,老哥的python脚本是在linux的terminal用vim编辑器来写的,只要在import处加上一个获取输入参数的功能每次执行时将可变路径类B的路径输入进去就可以调用了,下面解决方案的截图。

这里写图片描述

变量importPath来接收B类的路径,然后将这个路径使用sys.path.append(importPath) 添加到下面的类的import前面,其效果就是把import B变成了import importPath.B。这样一来就不用担心B类路径变化的问题。
下面是执行方法,我的脚本原来就有三个参数,现在新增加了一个参数,执行的时候将类B的路径放在第一个位置即可。

这里写图片描述

实际上问题还是很好处理的,只是老哥半天没解释清楚,说什么把类B当成文件,如何去解析类B,找到里面的json方法,把我捉急的,所以这则故事告诉我们沟通的重要性。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值