当前位置:首页 » 编程语言 » python获取目录

python获取目录

发布时间: 2023-05-08 20:53:52

python怎么得到文件所在路径

python获取文件所在目录的方法,具体步骤如下:
相关推荐:《Python入门教程》
第一步,通过import os导入os模块。
第二步,模拟一个文件路径,并赋值给变量filepath。
第三步:获取文件所在目录,使用os.path.dirname()。
在交互模式中,按回车键进行执行,即可得到文件所在目录。

② python中怎样转到指定目录

例如使用IDLE编译python代码时,可以使用os.chdir转到指定目录

import os.

os.getcwd() #get current work direction.

os.chdir('E:\Python_File\Test') #change direction.

在这之后可以直接调用’E:Python_FileTest’目录下的函数。

或者用库调用:

import osimport shutil.

alllist=os.listdir(u"D:\notes\python\资料\")for i in alllist:

aa,bb=i.split(".") if 'python' in aa.lower():

oldname= u"D:\notes\python\资料\"+aa+"."+bb.

newname=u"d:\\newname"+aa+"."+bb.

shutil.file(oldname,newname).

(2)python获取目录扩展阅读:

Python中获得当前目录和上级目录:

获取当前文件的路径:

from os import path
d = path.dirname(__file__) #返回当前文件所在的目录 # __file__ 为当前文件, 若果在ide中运行此行会报错,可改为 #d = path.dirname('.')。

获得某个路径的父级目录:

parent_path = os.path.dirname(d) #获得d所在的目录,即d的父级目录 parent_path = os.path.dirname(parent_path) ##获得parent_path所在的目录即parent_path的父级目录。

获得规范的绝对路径:

abspath = path.abspath(d) #返回d所在目录规范的绝对路径。



③ python获取当前路径

来自: https://www.cnblogs.com/wind-wang/p/5822192.html

import os,sys

使用sys.path[0]、sys.argv[0]、os.getcwd()、os.path.abspath( file )、os.path.realpath( file )

sys.path是Python会去寻找模块的搜索路径列表,sys.path[0]和sys.argv[0]是一回事因为Python会自动把sys.argv[0]加入sys.path。

如果你在C: est目录下执行python getpathgetpath.py,那么os.getcwd()会输出“C: est”,sys.path[0]会输出“C: estgetpath”。

如果你用py2exe模块把Python脚本编译为可执行文件,那么sys.path[0]的输出还会变化:
如果把依赖库用默认的方式打包为zip文件,那么sys.path[0]会输出“C: estgetpathlibarary.zip”;
如果在setup.py里面指定zipfile=None参数,依赖库就会被打包到exe文件里面,那么sys.path[0]会输出“C: estgetpathgetpath.exe”。

os.getcwd() “D:”,取的是起始执行目录
sys.path[0]或sys.argv[0] “D:python_test”,取的是被初始执行的脚本的所在目录
os.path.split(os.path.realpath( file ))[0] “D:python_test”,取的是 file 所在文件test_path.py的所在目录

正确获取当前的路径:

④ python文件名获取文件路径

概述

使用os.path.abspath()函数来获取文件绝对路径

解析

文件目录结构如下:

os.path.abspath(path)返回path规范化的绝对路径(但这个路径不一定是真实的路径),如果path仅是一个文件名,使用该函数后返回的路径是当前工作目录路径连接改文件名后所组成的新的路径名。

>>> import os.path

>>> os.path.abspath("a.py")

'C:\Users\Administrator\a.py'

os.path.split(path)将path分割成目录和文件名二元组返回

>>> os.path.split("C:\Users\Administrator\a.py")
('C:\Users\Administrator', 'a.py')

os.path.dirname(path)返回path的目录,其实就是os.path.split(path)的第一个元素

>>> os.path.dirname("C:\Users\Administrator\a.py")
'C:\Users\Administrator'

os.path.basename(path)返回path最后的文件名。如果path以/或结尾,就会返回空值。即os.path.split(path)的第二个元素。

>>> os.path.basename("C:\Users\Administrator\a.py")

'a.py'

os.path.commonprefix(list)返回list中所有path共有的最长的路径,从左向右,相同字符。

os.path.exists(path)如果path存在,返回True;如果path不存在,返回False。

os.path.isabs(path)如果path是绝对路径,返回True。

os.path.normpath(path)规范path字符串形式(规范文件路径)

os.path.isfile(path)判断路径是否为文件,是返回True,否则返回False

os.path.isdir(path)如果path是一个存在的目录,返回True,否则返货False。

os.path.islink(path)是否是链接;但如果系统不支持链接,则返回False。

⑤ Python其实很简单 第十六章 目录管理

为实现“按名存取”,必须建立文件名与辅存空间中物理地址的对应关系,体现这种对应关系的数据结构称为文件目录。文件目录表目至少要包含文件名、文件的类型、文件的长度、访问权限、建立时间、访问时间和文件存储地址等内容。通过前面一章的介绍,我们已经知道在文件信息中已经包含了文件名、文件类型访问权限等信息,而存储地址的信息则包含在目录信息中。

16.1路径

路径通常用一个字符串来表示,可以按照路径信息定位到一个目录或文件。如:“C:UsersAdministratorPictures1.jpg”这个信息可以非常方便的找到这个图片文件,“C:UsersAdministratorPictures”这个信息可以帮助我们找到更多的图片文件。

这里所说的“路径”和上网时碰到的“地址”含义比较相似,互联网就相当于将个人电脑可以访问的范围扩大了,互联网中的地址也是对应某一个存储空间的路径,按照地址可以访问互联网上的信息,就如同按照路径可以找到计算机中的文件一样。

在Python中,可以导入 os模块 来进行目录操作。

1、获取当前工作目录getcwd()函数

例:

import os

print(os.getcwd())

运行结果:

C:

这个路径是当前Python IDLE所在的地址。

2、获取文件的绝对路径abspath()函数

abspath()函数是os模块的子模块path提供的一个函数。用法举例如下:

import os

print(os.path.abspath(r'test.txt'))

运行结果:

C: est.txt


16.2 目录操作类函数

1、判断目录是否存在exists()函数

exists()函数是os模块的子模块path中的函数。使用方法举例如下:

import os

print(os.path.exists(r'C:UsersAdministratorPictures1.jpeg'))

输出结果:

True

2、创建目录mkdir()函数和makedirs()函数

mkdir()函数和makedirs()函数都是由os模块提供的,下面举例说明用法和区别。

例1:

import os

path='d:test'

if not os.path.exists(path):

os.makedirs(path)

print('该文件目录创建成功!')

如果目录d: est已存在,则不再创建;若不存在,则创建。

例2:

import os

path='d:testtest1test11'

if not os.path.exists(path):

os.makedirs(path)

print('该文件目录创建成功!')

虽然目录d: est已存在,但可以在其下继续创建子目录。上面的代码可以成功地创建d: est est1 est11目录。

mkdir()函数和makedirs()函数用法基本一样,不同之处在于mkdir()函数只能能创建一级目录。

3、删除目录函数rmdir()函数

rmdir()函数是由os模块提供的。

例如:通过上面的例子已经建立了d: est est1 est11目录,现在去删除子目录test11(此子目录为空目录),代码如下:

import os

os.rmdir('d:testtest1test11')

如果要删除的目录非空(其下还包含有文件或文件夹),则不能删除,并且出现Windows文件操作错误的提示(Python是调用操作系统命令完成文件和目录操作的)。譬如d: est目录下含有有子目录,则不能对其进行如下删除操作。

import os

os.rmdir('d:test')

此时,会出现如下错误提示:

Traceback (most recent call last):

File "C:/Users/zym/AppData/Local/Programs/Python/Python39/4.py", line 10, in

os.rmdir('d:test')

OSError: [WinError 145] 目录不是空的。: 'd:test'


4、删除非空目录函数rmtree()函数

rmtree()函数是由Python内置的标准模块shutil提供的,可以删除目录及目录下的文件和子目录。如删除d: est目录及其下的子目录和文件,可用如下代码:

import shutil

shutil.rmtree('d:test')

5、遍历目录walk()函数

walk()函数是由os模块提供的。

语法格式:

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

其中,top是所要遍历的目录的地址;topdown为可选参数,为 True时自上而下遍历 目录,为False时自下而上遍历目录,默认值为True;onerror为可选参数,用于指定异常处理方式,默认为忽略;followlinks为可选参数,如果为 True,则会遍历目录下的快捷方式(linux 下是软连接 symbolic link )实际所指的目录(默认关闭),如果为 False,则优先遍历 top 的子目录。

该函数的返回值为一个三元组(root,dirs,files)。root 所指的是当前正在遍历的这个文件夹的本身的地址;dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录);files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)。

例:遍历d: est目录及其子目录下的所有子目录和文件:

d: est目录及其下的子目录和文件

import os

path='d:test'

tups=os.walk(path) # 函数walk()的返回值为三元组


for root,dirs,files in tups: # 遍历这个三元组

for name in dirs: #遍历存放目录值的元组

print('dir:',os.path.join(root,name))

for name in files: #遍历存放文件名值的元组

print('file:',os.path.join(root,name))


运行结果如下:

dir: d: est est1

dir: d: est est1 est11

dir: d: est est1新建文件夹

file: d: est est1新建文本文档.txt

file: d: est est1 est11新建文本文档.txt

⑥ 如何使用Python获取文件所在目录和文件名

python有个魔术变量__file__ #(前后各两个下划线)。这个变量就是当前文件的绝对路径。

再利用Pyhon自带的os模块中的path模块可以处理路径,分理出目录和文件名。以下是示例代码。

importos
folder,filename=os.path.split(__file__)
print(folder,filename)

不明白可追问。

热点内容
php办公系统 发布:2025-07-19 03:06:35 浏览:894
奥德赛买什么配置出去改装 发布:2025-07-19 02:53:18 浏览:37
请与网络管理员联系请求访问权限 发布:2025-07-19 02:37:34 浏览:183
ipad上b站缓存视频怎么下载 发布:2025-07-19 02:32:17 浏览:839
phpcgi与phpfpm 发布:2025-07-19 02:05:19 浏览:522
捷达方向机安全登录密码是多少 发布:2025-07-19 00:57:37 浏览:689
夜魔迅雷下载ftp 发布:2025-07-19 00:39:29 浏览:96
增值税票安全接入服务器地址 发布:2025-07-19 00:20:45 浏览:482
solidworkspcb服务器地址 发布:2025-07-18 22:50:35 浏览:820
怎么在堆叠交换机里配置vlan 发布:2025-07-18 22:42:35 浏览:627