首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我的os.getcwd()会在同一位置的两个不同文件之间发生变化?

os.getcwd()是Python中的一个函数,用于获取当前工作目录的路径。它返回一个字符串,表示当前工作目录的绝对路径。

在同一位置的两个不同文件之间调用os.getcwd()可能会发生变化的原因是,当前工作目录是相对于正在执行的脚本或程序的位置而言的。当你在不同的文件中调用os.getcwd()时,它返回的路径可能会不同。

这是因为在Python中,每个文件都有自己的当前工作目录。当你在一个文件中调用os.getcwd()时,它返回的是该文件所在的目录。而当你在另一个文件中调用os.getcwd()时,它返回的是该文件所在的目录。

如果你希望在不同文件之间获取相同的当前工作目录,可以使用os.path.abspath(file)来获取当前文件的绝对路径,然后再使用os.path.dirname()来获取该文件所在的目录。

例如,在文件A.py中调用os.getcwd(),它返回的是A.py所在的目录。在文件B.py中调用os.getcwd(),它返回的是B.py所在的目录。如果你希望在两个文件中获取相同的当前工作目录,可以在两个文件中都使用os.path.abspath(file)和os.path.dirname()来获取绝对路径和所在目录。

总结起来,os.getcwd()会在同一位置的两个不同文件之间发生变化,是因为每个文件都有自己的当前工作目录。如果需要在不同文件之间获取相同的当前工作目录,可以使用os.path.abspath(file)和os.path.dirname()来获取绝对路径和所在目录。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):提供高可靠、低成本的云端存储服务,适用于各种场景的数据存储和处理需求。详情请参考:https://cloud.tencent.com/product/cos
  • 腾讯云云服务器(CVM):提供弹性、安全、稳定的云服务器,支持多种操作系统和应用场景。详情请参考:https://cloud.tencent.com/product/cvm
  • 腾讯云数据库(TencentDB):提供高性能、可扩展的数据库服务,包括关系型数据库、NoSQL数据库等。详情请参考:https://cloud.tencent.com/product/cdb
  • 腾讯云人工智能(AI):提供丰富的人工智能服务,包括图像识别、语音识别、自然语言处理等。详情请参考:https://cloud.tencent.com/product/ai
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

关于Python3import问题(pycharm可以运行,命令行import错误)

以前从来没有写过特别多代码,这次在阅读论文时候跑别人代码时候出现了很多import问题,这里想跟大家分享一下,在Ubuntu系统,使用是anaconda3,版本为3.6,一般会在pycharm...一、同一目录下import 下面是文档结构:你可以看到在工程tfexe下,存在两个文件夹一个是datasets,一个是parallel,dataset下还有一个in文件夹和一个out.py文件,...bb.py文件内容: import os import sys print("当前工作目录:",os.getcwd()) print("python搜索模块路径集合",sys.path) #引入同一文件夹下模块...在pycharm上import不同文件夹下模块居然成功了,这是为什么呢?...但是你肯定看到了注释掉了那个进入in2模块为什么注释掉,因为跑不通啊,为什么跑不通呢?

1.9K10
  • 基于YOLOv3车辆号牌定位算法【文末送书】

    遗忘门实现公式如式1所示: 输入门与遗忘门结构不同,该部分分为两部分结构,一部分与遗忘门类似,另外一部分则是在遗忘门基础上通过tanh函数将特征映射至-1和1之间,其中-1表示不同更新部分,...为了保证切割图片完整性,同样采取扩大像素值办法,xml文件中保存号牌位置,其中左上角位置坐标点分别减少5个像素,右下角位置坐标点分别增加5个像素。...比例分为训练集和测试集,在项目中新建data目录,并在data文件夹中分别新建train/text和test/text两个路径,其中train/text用来存放处理后训练集图片,train中存放处理...修改网络中参数会导致网络发生变化,因此,要修改预训练权重文件来适配当前网络,解决方法有两种:剔除其中不合适网络节点训练参数;修改不适合训练网络节点,将其节点进行填充。...除此之外,也会在拍摄过程中受到天气等各种因素影响,这些因素不同也在不同程度上影响了最终识别效果。

    48420

    新书《Pytorch深度学习之目标检测》!干货预览

    遗忘门实现公式如式1所示: 输入门与遗忘门结构不同,该部分分为两部分结构,一部分与遗忘门类似,另外一部分则是在遗忘门基础上通过tanh函数将特征映射至-1和1之间,其中-1表示不同更新部分,...为了保证切割图片完整性,同样采取扩大像素值办法,xml文件中保存号牌位置,其中左上角位置坐标点分别减少5个像素,右下角位置坐标点分别增加5个像素。...比例分为训练集和测试集,在项目中新建data目录,并在data文件夹中分别新建train/text和test/text两个路径,其中train/text用来存放处理后训练集图片,train中存放处理...修改网络中参数会导致网络发生变化,因此,要修改预训练权重文件来适配当前网络,解决方法有两种:剔除其中不合适网络节点训练参数;修改不适合训练网络节点,将其节点进行填充。...除此之外,也会在拍摄过程中受到天气等各种因素影响,这些因素不同也在不同程度上影响了最终识别效果。

    78250

    python标准库OS模块详解

    在第一次导入os模块之后,除非直接修改os.environ值,否则该属性值不再发生变化。...需要传入一个类路径参数用以指定新建路径位置和名称,如果指定路径已存在,则会抛出FileExistsError异常。...在交互式环境中,返回就是交互终端打开位置;而在 Python 文件中,返回则是文件所在位置。...,即可切换到父目录 os.getcwd() '/home/justdopython/just/do' 有了这个函数,跨目录读写文件和调用模块就会变得非常方便了,很多时候也就不必再反复将同一文件在各个目录之间复制粘贴运行...函数os.path.split()功能就是将传入路径以最后一个分隔符为界,分成两个字符串,并打包成元组形式返回;前两个函数os.path.dirname()和os.path.basename()返回值分别是函数

    1.7K10

    文件操作深入讲解

    或者直接Ctrl+B直接看源码 # 跨级新建目录 用/符号代表路径不同层级, # 如果跨级建目录,必须确保上面的层级是存在 #os.mkdir("Alisa/Vict")#相对路径 #os.mkdir...(代码正在运行这个文件)它本身 #第三个知识点:如何拼接路径 #new_path_1 =os.getcwd() #getcwd()获取当前路径 # new_path_1 =os.getcwd()+...#print(os.path.isfile(os.getcwd()))#返回值 布尔值 False #getcwd()确定当前工作目录最后1级目录,不到文件 isfile判断是不是文件 #...(os.getcwd(),path)) 文件异常 代码如下 python异常处理&异常基类学习 Python调试方法以及技巧 #两个问题 #类与对象--调式 #异常处理--抓了之后 要raise...单元测试 #异常处理&调式(类与对象会讲调试) #异常:在运行代码过程中遇到任何错误,带有error字样 都是异常 #异常处理:我们对代码中所有可能会出现异常进行处理 #疑问:为什么要去进行处理

    64420

    2022年最新Python大数据之Python基础【八】文件操作与类

    print(file.read()) # 关闭文件 file.close() # 为什么要关闭文件?...() 7、rename和remove rename可以进行文件重命名或文件移动 remove 可以进行文件删除 # 如果想要使用这两个方法,就要去进行模块导入 import os # rename...(os.getcwd()) # listdir 指定目录下目录结构 >>> 类似于linux命令中ls # ['04-文件写入.py', '文件', '.DS_Store', '08-文件操作...# 方法时定义在类内部,所有的对象共有一个类,所以我们再调用方法时候,需要传入我们调用方法所使用类 # s2 调用study方法时所指向空间和s1无关所以两个对象指向不同内存空间,修改一个...,另一个不发生变化 s2 = Student() s2.study()

    51510

    Java开发者Python快速进修指南:自定义模块及常用模块

    然而,两者之间区别在于Python没有类路径概念,它直接使用.py文件文件名作为导入路径,并将其余工作交给Python解释器来扫描和处理。...也可能是导致不同包目录情况自定义模块来举一个在Java开发中常用开发方式作为例子。在我们进行项目开发时,通常会在项目的结构中创建一个util包,用于存放一些工具类。...当你想要导入某个包时候,你可能会想,为什么可以直接导入,而不需要在同目录下引入各种第三方包呢?实际上,这和Java是一样。Python也有固定包扫描路径。...datetime.datetime.now()格式化日期时间:formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S")计算两个日期之间差值...获取当前工作目录:current_directory = os.getcwd()创建目录:os.mkdir("new_directory")判断文件或目录是否存在:exists = os.path.exists

    10442

    Python3 filecmp模块测试比较文件原理解析

    默认情况下,会使用由os.stat()得到信息来完成一个浅比较。如果结果是一样,则认为文件相同。因此,对于同时创建相同大小文件,即使他们内容不同,也会报告为是相同文件。...当shallow为False时,则要比较文件内容。 ? 如果非递归比较两个目录中一组文件,则可以使用cmpfiles()。参数是目录名和两个位置上要检查就爱你列表。...传入公共文件列表应当只包含文件名(目录会导致匹配不成功),而且这些文件两个位置上都应当出现。下一个例子显示了构造公共列表一种简单方法。与cmp()一样,这个比较也有一个shallow标志。...公共成员可以被进一步分解为文件、目录和“有趣”元素(两个目录中类型不同内容,或者os.stat()指出有错误地方)。...文件之间差别也可以做类似的划分。

    81920

    day21 02 包进阶

    ,但是运行结果会报错,为什么呢?...,一挪动就会出错 3.相对路径导入(一般在自己可以完全制作一个完整时候再使用) 一个点:代表当前目录 两个点:代表上一层目录 在glance包下面的_init_.py文件夹中输入: from ....,执行: from dir import glance glance.cmd.manage.get() 同样可以使用cmd里面的方法,这种使用当前目录导入包方法 优点:可以随意移动包,只要能找到包位置...,就可以使用包里面的方法 缺点:不能在包里使用这个模块了,比如包下面文件文件之间函数相互调用,只能使用相对路径,使用了相对路径就不能在内部直接执行了 比如:在policy模块里面使用cmd模块方法...:软件核心代码    假如这两个文件里面含有: bin文件里面 init_.py start.py core文件里面 _init_.py core.py文件里面

    36920

    个推基于Consul配置管理

    [02.png] 微服务体系下配置分类和组织形式 在实践中,不同产品线配置会放置在Consul不同路径下,实现不同产品线配置之间隔离。...按照配置用途,可将同一产品线下配置分为三类: 1.API网关相关配置; 2.服务注册与发现相关配置; 3.应用相关配置。 其中,每类配置会对应Consul上不同目录。...2.应用本身配置 一般为不经常性发生变化、可动态调整、开关配置。这类配置比较稳定,在初始化后,只有在需要时才会改动,通常会设置默认值。这两类配置在Consul上会放在不同子目录下。...模板中还使用了 " CONSUL_CONFIG_PREFIX " 这个环境变量,这样,不同产品线便可以使用同一个模板文件,只需要修改" CONSUL_CONFIG_PREFIX "这个环境变量值即可..." source"指定两个模板文件进行渲染,将渲染结果分别保存在" destination"指定文件中,保存成功后,分别运行" command"指定命令来更新并加载配置文件

    1.3K20

    从零开始手写Tomcat教程8节----加载器

    看到这里,提问: 为什么要执行这样一个循环呢?...当然,不是直接委托给父类加载器,而是先判断该类型是否已经被当前类加载器所加载,如果没有再委托给父类加载器,即一个类只能被同一个类加载器加载一次,但是可以被多个不同类加载器加载多次,这也引出一个没说知识点...: 类加载器+class对象才能唯一确定一个类 这里类加载器指的是两种情况: 两个类加载器本身class类型都不同同一个类加载器两个实例对象加载出来类,也被视为不同类 ---- 更多类加载器知识点...,感兴趣小伙伴可以去了解一下,主要是处理权限管理,比如对某个文件,资源是否有读写权限等 ---- 开启新线程执行类重新载入 因为检查每个资源是否改动,以及重新加载过程耗时可能会比较长,并且该过程与当前线程能否继续运行也没有之间关联...第二个问题会在12小节进行回答: servlet只能访问指定目录下类,类加载器如何实现这种隔离访问机制呢?

    23810

    怎样合理利用 Python Package

    把本模块里面的公用method在 __init__.py 时候暴露出来,这样在其他地方引用就不需要引用具体位置,只需要引用这个包就好了。...跳转链接: 使用自定义 package 下面这个原先版本应该是 python 2 ,python 3 完全不同了,所以进行了一些删减,仅仅作为小知识点。...能够节省一定时间。 在 class 已经足以解决大部分问题的当下,为什么需要 package ? 首先随着项目的变大,通过 package 来整理项目变得尤为重要。...问题就来了,我们工作目录往往不在系统路径下,也就是说没有把当前工作路径添加到System Variable Path。我们无法直接调用同一目录下 package 。...import sys, os sys.path.append(os.getcwd()) 然后我们有两种使用自定义 package 方式如下所示。

    33910

    python学习笔记9.2-文件文件夹操作

    文件以及目录操作 1.1 得到当前目录,即返回当前运行文件所在目录 import os path = os.getcwd() # get the current path print(path) 1.2...这个函数也只是忠实地写入,不会在每行后面加上任何东西。 fp.close() 关闭文件。python会在一个文件不用后自动关闭文件,不过这一功能没有保证,最好还是养成自己关闭习惯。...(unix系统中) fp.tell() 返回文件操作标记的当前位置,以文件开头为原点 fp.next() 返回下一行,并将文件操作标记位移到下一行。...需要注意,如果文件以a或a+模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾。 fp.truncate([size]) 把文件裁成规定大小,默认是裁到当前文件操作标记位置。...如果size比文件大小还要大,依据系统不同可能是不改变文件,也可能是用0把文件补到相应大小,也可能是以一些随机内容加上去。

    74460

    python常用函数总结

    os.path.abspath(“1.txt”) == os.path.join(os.getcwd(), “1.txt”)    os.path.split(os.getcwd()) 用于分开一个目录名称中目录部分和文件名称部分...()) 是否是文件系统安装点 windows下不可用    os.path.samefile(os.getcwd(), ‘/home/huaying’) 看看两个文件名是不是指的是同一文件    os.path.walk...() 读取全部,返回一个list. list每个元素表示一行,包含”\n”\      f.tell() 返回当前文件读取位置      f.seek(off, where) 定位文件读写位置. off...MatchObject常用函数          m.start() 返回起始位置,m.end()返回结束位置(不包含该位置字符).          ...A B两个regexp,A|B表示和A匹配或者跟B匹配.        ^ 表示只匹配一行开始行首,^只有在开头才有此特殊意义。

    52050

    h5网页制作_为什么叫h5页面

    大家好,又见面了,是你们朋友全栈君。...H5将文件结构简化成两个主要对象类型: 数据集dataset,就是同一类型数据多维数组 组group,是一种容器结构,可以包含数据集和其他组,若一个文件中存放了不同种类数据集,这些数据集管理就用到了...直观理解,可以参考我们文件系统,不同文件存放在不同目录下: 目录就是hdf5文件group,描述了数据集DataSet分类信息,通过group有效将多种dataset进行管理和划分~ 文件就是...这里选择把所有图片修改为64×64像素,并重新编号存入另一个文件夹中!...相当于会有两个数据集,一个存图片数据,一个存图片数据标签 一个h5文件可以print(hf.keys())来查看里面的key,每一个key对应一个数据集,一个h5文件可以有很多数据集~ h5文件数据

    1.1K30

    一文速通JUC中各种锁

    /时间戳之间没有其他线程修改数据,不能保证在整个业务流程中数据一致性。...为什么会有公平锁、非公平锁设计?为什么默认非公平? 公平锁和非公平锁设计是为了解决多个线程共享资源时竞争问题。...在文件操作中,可能需要对文件进行读写操作,如果在进行写操作时,又需要进行读操作,此时就需要使用可重入锁来避免死锁或其他线程无法获取该锁情况。...分析程序中使用锁:查看程序中使用锁,以及锁获取和释放位置。 2. 分析程序资源管理方式:了解程序中资源获取和释放方式,以及是否存在资源占用情况。 3....正在参与2023腾讯技术创作特训营第二期有奖征文,瓜分万元奖池和键盘手表

    25131

    Python3-logging模块

    ,只是在创建这些类实例时设置了一些默认值 这些组件之间关系描述: 日志器(logger)需要通过处理器(handler)将日志信息输出到目标位置,如:文件、sys.stdout、网络等;不同处理器...(handler)可以将日志输出到不同位置; 日志器(logger)可以设置多个处理器(handler)将同一条日志记录输出到不同位置; 每个处理器(handler)都可以设置自己过滤器(filter...)实现日志过滤,从而只保留感兴趣日志; 每个处理器(handler)都可以设置自己格式器(formatter)实现同一条日志以不同格式输出到不同地方。...比如将日志按天写入不同日期结尾文件文件 SocketHandler 用TCP网络连接写LOG DatagramHandler 用UDP网络连接写LOG SMTPHandler 把LOG写成EMAIL...文件结构 通过os.path.dirname(os.getcwd())获得项目名,也就是Vuiki。项目路径不同,使用方法也不同

    72010

    深度对比Python中4大文件处理库(os、shutil、glob、pathlib)

    二、四大库各自好用地方 这里采用文字叙述为大家讲解这四大模块各自用法,具体内容会在后面详细介绍。...代码中写方式属于元组拆包; 元组拆包:就是将一个元组中每个值,赋值给不同变量; path = r"C:\Users\黄伟\Desktop\publish\os模块\test_os模块" for...(path2) 结果如下: 9. os.path.join(path1,path2) 含义:传入两个path路径,将该路径拼接起来,形成一个新完整路径; path = os.getcwd() lis...():将压缩包中所有文件,解压出来; shutil 模块对压缩包处理是调用 ZipFile 和 TarFile这两个模块来进行,因此需要导入这两个模块; 注意:这里所说压缩包,指的是“.zip”格式压缩包...根据不同对象,调用对应方法,就可以很便捷处理文件文件夹。 2. 获取文件具体信息 我们既然针对某个文件操作,所以首先应该获取到文件Path对象。

    6.1K32
    领券