程序文件路径和目录的操作之BASEDIR目录获取

本文介绍了一种解决Python程序在移植后因模块调用路径变化而导致的问题的方法。通过使用os模块获取当前文件的绝对路径及层级信息,将所需目录加入到系统路径中,确保了跨平台和跨目录调用的稳定性。
Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

import sys
import os
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
#通过py所在的文件找到他的绝对路径
# os.path.abspath(__file__)
# 通过os.path.dirname(os.path.abspath(__file__))找到父目录
# os.path.dirname(os.path.dirname(os.path.abspath(__file__)))找到爷爷目录
sys.path.append(BASE_DIR)
from mudule import main

main.main()

思路通过要执行的py文件通过

os.path.abspath(__file__)

拿到文件所在的绝对路径

通过os.path.dirname(os.path.abspath(__file__))找到父目录

os.path.dirname(os.path.dirname(os.path.abspath(__file__)))找到爷爷目录

作用:

解决:Python运行过程中模块的调用常常在当前的路径,这样移植程序之后,会发生找不到文件,是因为没有指定到执行目录

pycharm运行不报错的原因是,他会自动添加对应的目录

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件测试老痞

你的支持,是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值