首页 > 编程语言 >python的os.path 大集合来了

python的os.path 大集合来了

时间:2023-05-27 09:44:06浏览次数:40  
标签:python user home test path txt os

 os.path 模块主要用于用于处理文件路径和文件名

1. os.path.abspath -返回指定路径的绝对路径。例如:os.path.abspath('test.txt') 返回 /home/user/test.txt

1.1 os.path.abspath(__file__) -返回当前文件的绝对路径

#test_demo.py

import os

print("Print path of current file", os.path.abspath(__file__)) # /Users/xx/Myselfpython/tests/test_demo.py

 

2.os.path.dirname() -返回文件路径(上一级目录)(返回指定路径的目录名。例如:os.path.dirname('/home/user/test.txt') 返回 /home/user。)

# test_demo.py

import os

print("Dirname is:", os.path.dirname(os.path.abspath(__file__))) #/Users/xx/Myselfpython/tests

 

3.os.path.expanduser() - 把path 中包含的 ~ 和 ~user 转换成用户目录

import os
print(os.path.expanduser("~"))
/Users/san.zhang
print(os.path.expanduser("../"))
../
print(os.path.abspath(os.path.expanduser("../")))
/Users/san.zhang/myself_project

 

4. os.path.join(): 将多个路径组合成一个完整的路径。例如:os.path.join('/usr', 'local', 'bin') 返回 /usr/local/bin

--data

--tests

---test_demo

----test_demo.py

如上获取当前路径的上2层的data目录

#test_demo.py

import os


print("上2层目录下的data路径:", os.path.abspath(os.path.join(os.path.abspath(__file__), "../../data"))) # /Users/xx/Myselfpython/data

注意:join 拼接获取绝对路径时,前母需要加上os.path.abspath

 

5.os.path.basename(): 返回指定路径的文件名或目录名。例如:os.path.basename('/home/user/test.txt') 返回 test.txt

6.os.path.exists(): 判断指定路径是否存在。例如:os.path.exists('/home/user/test.txt') 返回 True 或 False

7.os.path.isfile(): 判断指定路径是否为文件。例如:os.path.isfile('/home/user/test.txt') 返回 True 或 False

8.os.path.isdir(): 判断指定路径是否为目录。例如:os.path.isdir('/home/user') 返回 True 或 False

9.os.path.splitext(): 分离文件名和扩展名。例如:os.path.splitext('/home/user/test.txt') 返回 ('/home/user/test', '.txt')

10.os.path.getsize(): 获取文件大小。例如:os.path.getsize('/home/user/test.txt') 返回文件大小,单位为字节。

11.os.path.getmtime(): 获取文件的修改时间。例如:os.path.getmtime('/home/user/test.txt') 返回文件的修改时间戳。

11.

标签:python,user,home,test,path,txt,os
From: https://www.cnblogs.com/ananmy/p/16983372.html

相关文章

  • Python实现将Excel表格按某列拆分为多个sheet
    <生信交流与合作请关注公众~号@生信探索>实际数据分析中遇到需求,把某个Excel表格按照某一列分为多个sheet,并且要求如果某个key对应的行数较少应该合并到一个sheet中。importpandasaspdimportbioquestasbq#https://jihulab.com/BioQuest/bioquest从网上找随便了个数据......
  • 基于QPSK调制和CoSaMP算法的信道估计均衡算法matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要 均衡器的分类    •均衡处理方法       时域均衡器:单载波数字通信中多采用时域均衡器,从时域的冲激响应考虑       正交频分复用OFDM调制:采用频域均衡    •是否......
  • Python中的数据容器指的是什么?
    在Python中,数据容器是用来存储和组织数据的对象,常见的数据容器有以下几种:1.列表(List):是一种有序的数据容器,可以存储任意类型的数据,可以通过下标来访问和修改列表中的元素。2.元组(Tuple):也是一种有序的数据容器,与列表类似,但是元组中的元素不可修改,常用于存储一些固定不变的数据。3......
  • 用Python开发输入法后台(5)——数据结构
    全部汉字我从网上收集了一些资料,构建了一个<全部汉字.json>文件,文件格式如下所示:{"吖":[["aa","ya"],"szhdps"],"呵":[["aa",......
  • Python——饼图
    matplotlib.pyplot.pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,......
  • python 日期函数的使用
    计算一段时间内,周六出现的次数。如果是周六,则 5==dt_start.weekday()这里用到了2个主要的日期函数datetime_to_date_int,date_int_to_datetime importdatetimedefdatetime_to_date_int(dt):ifisinstance(dt,datetime.datetime):dt=dt.date()......
  • 使用这些方法让你的 Python 并发任务执行得更好
    动动发财的小手,点个赞吧!问题一直以来,Python的多线程性能因为GIL而一直没有达到预期。所以从3.4版本开始,Python引入了asyncio包,通过并发的方式并发执行IO-bound任务。经过多次迭代,asyncioAPI的效果非常好,并发任务的性能相比多线程版本有了很大的提升。但是,程序员在使......
  • 63. Unique Paths II刷题笔记
    问题描述主要是稀奇古怪的边界条件,例如左上角是1,最左边和最上边是1,有多个1,输入为行,或者列classSolution:defuniquePathsWithObstacles(self,obstacleGrid:List[List[int]])->int:m=len(obstacleGrid)n=len(obstacleGrid[0])dp=[0]*m......
  • 62. Unique Paths刷题笔记
    问题描述用动态规划做的,注意最左边和最上边的情况设置从0到n-1的列表可以用list(range(n))classSolution:defuniquePaths(self,m:int,n:int)->int:dp=[1]*mforiinrange(1,n):forjinrange(1,m):dp[j]+=dp[j......
  • 746. Min Cost Climbing Stairs刷题笔记
    题目描述出bug的时候输出打印dp就行classSolution:defminCostClimbingStairs(self,cost:List[int])->int:n=len(cost)+1ifn<=3:returnmin(cost[0],cost[1])dp=[0]*ncost.append(0)foriinrange(2......