如何用python查询文件路劲

如何用python查询文件路劲,第1张

最近在用Python脚本处理文件夹下面的文件名的搜索和重命名。其中碰到如何递归遍历文件夹下面所有的文件,找到需要的文件,并且重命名的问题。其实如果看看Python的document,还是比较简单的,这里直接给出使用方法,免得大家还要花精力去查找。

环境:

文件夹结构:

----path1

----path1-1

----path1-11txt

----path1-2

----path11txt

----path2

----recursiveDirpy

文件夹结构如上所示。

代码分析(recursiveDirpy):

[python] view plaincopy

<span style="font-size:18px;">import os

'''''

本脚本用来演示如何遍历py脚本所在文件夹下面所有的文件(包括子文件夹以及其中包含的文件)。

重点演示如何获取每个文件的绝对路径。注意ospathjoin(dirpath, filename)的用法。

'''

rootdir = osgetcwd()

print('rootdir = ' + rootdir)

for (dirpath, dirnames, filenames) in oswalk(rootdir):

#print('dirpath = ' + dirpath)

for dirname in dirnames:

print('dirname = ' + dirname)

for filename in filenames:

#下面的打印结果类似为:D:\pythonDirDemo\path1\path1-1\path1-11txt

print(ospathjoin(dirpath, filename))

if(filename=='path1-11txt'):

oschdir(dirpath)

#osrename(ospathjoin(dirpath, filename), dirpath + ossep + 'path1-11newtxt')

osrename('path1-11txt', 'path1-11newtxt')

#osremove(ospathjoin(dirpath, filename))

#下面的输出为fileName = path1-11txt,并未包含绝对路径,所以需要使用ospathjoin来链接,获取绝对路径

print('fileName = ' + filename)

print('------------------one circle end-------------------')</span>

所以可以看到程序中使用ospathjoin(dirpath, filename)来拼接出绝对路径出来。注意下面的重命名用法,可以将工作目录切换到oschdir(dirpath),这样就可以直接用osrename(oldfile, newfile)Python会自动到dirpath下面查找oldfile并且重命名为newfile。注意工作目录的含义:在Python的GUI中,使用osgetcwd()可以获取到当前工作目录。测试如下:

[html] view plaincopy

<span style="font-size:18px;">>>> oschdir('D:')

>>> osgetcwd()

'D:\\pythonDirDemo\\path1\\path1-1'

>>> oschdir('D:\\')

>>> osgetcwd()

'D:\\'</span>

可见却是可以用chdir改变工作目录。这个代码只是在重命名的时候用到的小技巧而已,大家知道有这个东西就行了,不过调用chdir之后,后续再获取getcwd()就会被影响,所以警惕。

类似这样的代码 import a_module import os path =ospathdirname(amodule__file__) print path 比如在我的计算机上执行这样的结果。 john@john-desktop:~$ pythonPython 276 (default, Mar 22 2014, 22:59:56) [GCC 482] on linux2Type "

在文章 python获取当前最上层活动窗口的路径 中说明了如何用python脚本获取最上层活动窗口的路径,但是要求窗口标题栏中必须是窗口的绝对路径。

这个要求使得脚本使用起来非常得不方便,因此对上面那个脚本进行了改进,使得窗口标题栏为非绝对路径下也能使用。

可以通过获取地址栏里的文本(文件夹的绝对路径),如下图所示:

使用pyinstaller可以把py文件打包为exe可执行文件,命令为:

打包后有两个文件夹,一个是dist,另外一个是build,可执行文件在dist文件夹里面,但是会有许多依赖是独立文件存在

使用-F参数后,打包的可执行文件是一个整体,只有一个exe文件。

获取文件路径的方式有四种,可以在打包成exe文件后,获取exe文件的当前路径

在ide界面的执行结果如下:

在exe文件的执行结果为:我是把exe文件放到桌面运行的。

用内置函数: __file__

给一个Django的示例,这是获取当前文件的上一级目录的实例。

import os

# Build paths inside the project like this: ospathjoin(BASE_DIR, )

BASE_DIR = ospathdirname(ospathdirname(ospathabspath(__file__)))

以上就是关于如何用python查询文件路劲全部的内容,包括:如何用python查询文件路劲、如何获取 Python 模块的路径、python获取当前最上层活动窗口的路径_version2等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9617826.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存