【Python】执行脚本的时,如何指定运行根目录,而不是指定脚本的父级目录

news2024/9/24 11:26:04

author: jwensh & gpt
date: 2024.09.23

python 执行脚本的时,如何指定运行根目录,而不是指定脚本的父级目录

  • prompt:python 执行脚本的时候,如何指定他的运行根目录,而不是指定脚本的父级目录

在执行 Python 脚本时,如果你想指定一个自定义的运行根目录,而不是默认的脚本所在目录,可以使用以下几种方式:

1. 通过 os.chdir() 修改当前工作目录

在脚本中使用 os.chdir() 来更改 Python 程序的工作目录。

import os

# 指定你想要的根目录
os.chdir('/path/to/your/directory')

# 打印当前工作目录以验证
print(os.getcwd())

在执行此代码后,程序的当前工作目录会被更改为你指定的目录。

2. 通过 PYTHONPATH 环境变量

你可以通过设置 PYTHONPATH 环境变量来指定 Python 的工作目录。在终端中运行 Python 脚本时,可以这样操作:

PYTHONPATH=/path/to/your/directory python your_script.py

这样,Python 会将 /path/to/your/directory 作为根目录来寻找模块和执行脚本。

3. 使用 sys.path 添加根目录

你也可以在 Python 脚本中通过修改 sys.path 来添加自定义的目录到搜索路径中。

import sys

# 添加自定义目录到系统路径
sys.path.append('/path/to/your/directory')

# 现在可以在该路径中执行脚本或导入模块

4. 在命令行中使用 cd 切换目录

在执行脚本之前,先通过 cd 命令进入指定的根目录,再执行脚本。

cd /path/to/your/directory
python /path/to/your/script.py

这样,脚本的工作目录会被设置为你手动切换到的目录。

以上方法都可以根据你的需求来选择合适的方式,尤其是 os.chdir() 在脚本内部修改工作目录比较方便。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2160228.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学校气膜体育馆:低成本、高效率的灵活运动空间—轻空间

在当前教育设施的升级中,传统体育馆的建设往往面临长时间、高成本、以及繁琐的审批流程等诸多挑战。然而,学校无需再为这些问题烦恼,只需选择气膜结构的体育馆,就能快速、高效地解决体育场地需求。气膜体育馆凭借其灵活的设计和高…

Java项目实战II基于SSM的国外摇滚乐队交流和周边售卖系统的设计与实现(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者 一、前言 随着互联网技术的飞速发展,信息传播的广度和深度不断拓展,为各行业的创新发展…

二分查找算法(4) _搜索插入位置

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 二分查找算法(4) _搜索插入位置 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 …

太爱这5本书了,建议所有大模型人去翻烂它❗

要说现在最热门的技术,可谓非大模型莫属! 不少小伙伴都想要学习大模型技术,转战AI领域,以适应未来的大趋势,寻求更有前景的发展~~ 然而,在学习大模型技术这条道路上,却不知道如何进行系统的学…

无人机飞手培训校企合作特训技术详解

随着无人机技术的飞速发展,其在航拍、农业、测绘、救援等多个领域的应用日益广泛,市场对高素质无人机飞手的需求急剧增加。为满足这一需求,促进教育与产业深度融合,无人机飞手培训校企合作模式应运而生。本文将从确定合作目标、共…

可视化大屏看阿里,阿里出品,必属精品。

阿里云有自己的可视化平台——dataV,经常会出一些高颜值、强交互的大屏,本期为大家分享一波。

HTML、CSS

初识web前端 web标准 Web标准也称为网页标准,由一系列的标准组成,大部分由W3C (World Wide Web Consortium,万维网联盟) 负责制定。三个组成部分: HTML: 负责网页的结构(页面元素和内容)。CSS: 负责网页的表现(页面元素的外观、位置等页面样…

Tableau|一入门

一 什么是BI工具 BI 工具即商业智能(Business Intelligence)工具,是一种用于收集、整理、分析和展示企业数据的软件系统,其主要目的是帮助企业用户更好地理解和利用数据,以支持决策制定。 主要功能: 1.数据…

Vue3使用通信组件库mitt作为事件总线实现跨组件通信

mitt 介绍: Mitt 是一个在 Vue.js 应用程序中使用的小型事件总线库。该库允许组件进行通信,而不必过度依赖父级或子级组件之间的 props。 先看项目用例: 【 以下转载自:https://blog.csdn.net/yuanlong12178/article/details/139579299 】…

虚拟机安装xubuntu

新建一个新的虚拟机,选择自定义安装 默认下一步 选择稍后安装操作系统 选择所要创建的系统及版本 填写虚拟机的名称及创建的虚拟机保存的位置 选择处理器和内核的数量 处理器数量指的是:虚拟的CPU数量。 每个处理器的内核数量指的是:虚拟CPU…

Ubuntu 24.04.1 LTS 安装 node 16.20.2环境

目录 step1:确认版本 step2:选择方式 step3:二进制文件安装 step1:确认版本 不同的版本情况可能有稍许不同,尽可能环境安装前版本保持一致; lsb_release -a 或者 cat /etc/os-release 可以查看版本信…

【机器学习】---元强化学习

目录 1. 元学习简介1.1 什么是元学习?1.2 元学习的应用 2. 强化学习基础2.1 什么是强化学习?2.2 强化学习的基本框架2.3 深度强化学习 3. 元强化学习的概念与工作原理3.1 元强化学习是什么?3.2 元强化学习与普通强化学习的区别 4. 元强化学习…

Arthas ognl(执行ognl表达式)

文章目录 二、命令列表2.1 jvm相关命令2.1.12 ognl(执行ognl表达式)举例1:获取静态属性举例2:调用静态方法 二、命令列表 2.1 jvm相关命令 2.1.12 ognl(执行ognl表达式) 使用场景: Arthas 的 …

【Vue系列五】—Vue学习历程的知识分享!

前言 本篇文章讲述前端工程化从模块化到如今的脚手架的发展,以及Webpack、Vue脚手架的详解! 一、模块化 模块化就是把单独的功能封装到模块(文件)中,模块之间相互隔离,但可以通过特定的接口公开内部成员…

黑马智数Day2

表单基础校验实现 基础双向绑定 v-model <el-input v-model"formData.username" /> <script> export default {name: Login,data() {return {formData: {username: ,password: ,remember: }}} } </script> 表单校验配置 按照业务要求编写校验规…

231. 2 的幂 简单递归 python除法的类型

已解答 简单 相关标签 相关企业 给你一个整数 n&#xff0c;请你判断该整数是否是 2 的幂次方。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 如果存在一个整数 x 使得 n 2x &#xff0c;则认为 n 是 2 的幂次方。 示例 1&#xff1a; 输入&…

【ollama 在linux 上离线部署 本地大模型】

本文继续来讲如何在linux上部署离线本地智能大模型&#xff0c;前篇如下&#xff1a;window上部署离线大模型 首先还是安装ollama linux版本&#xff0c;如果完全离线的话&#xff0c;可以从github上下载一个linux 版本的压缩包传上去 git hub上搜索ollama 找到右下角 找到li…

Centos/fedora/openEuler 终端中文显示配置

注意&#xff1a;这里主要解决的是图形界面、远程登录界面的中文乱码问题 系统原生的终端&#xff08;如虚拟机系统显示的终端&#xff09;&#xff0c;由于使用的是十分原始的 TTY 终端&#xff0c;使用点阵字体进行显示&#xff0c;点阵字体不支持中文&#xff0c;因此无法显…

用友与万里汇达成战略合作,共创出海企业司库管理新篇章

新加坡 2024年9月23日 在全球数字化浪潮的推动下&#xff0c;中国企业正加速融入全球贸易体系&#xff0c;面对复杂多变的国际市场环境&#xff0c;寻求更高效、便捷的跨境贸易解决方案成为众多出口企业的迫切需求。 9月23日&#xff0c;用友网络科技股份有限公司&#xff08…

KDD2024 时序论文

1、Generative Pretrained Hierarchical Transformer for Time Series Forecasting paper: https://dl.acm.org/doi/abs/10.1145/3637528.3671855 code&#xff1a;GitHub - SiriZhang45/FRNet: Code Implementation of FRNet 2、Fredformer: Frequency Debiased Transforme…