当前位置:
首页 > Python基础教程 >
-
Python如何获取当前路径并列出当前路径下的所有文件
这篇文章主要介绍了Python如何获取当前路径并列出当前路径下的所有文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Python获取当前路径并列出当前路径下的所有文件
问题描述
因为需要读取多个文件,但是如果一个一个地输入名字和读取,效率就会异常地低,作为程序员,怎么能忍受这样的折磨呢???
所以,现在问题是如何获取当前路径,并获取指定目录下的所有文件,然后对每一文件进行单独处理呢?
解决方案
首先获取当前路径,使用下面的代码:
import os
path = os.getcwd()#获取当前路径
print(path)
输出:
'/home'
然后获取当前路径下的文件名
all_files = [f for f in os.listdir(path )]#输出根path下的所有文件名到一个列表中
#对各个文件进行处理
print(all_files)
输出:
[ ‘tmp’,'user1']
由上即可获得指定目录下的所有文件及文件夹列表了。
心得:
python支持很多的os中指令,需要在使用的过程中慢慢熟悉了。。。
python 递归获取目录(文件夹)下的所有文件路径
例1:基本原理1
# 获取目录下的文件名和文件夹名
import os
dir_path = './'
file_list = os.listdir(dir_path)
print(file_list)
输出结果:
[‘request_data’, ‘temp01.py’, ‘testcase’, ‘venv’]
注:有文件,也有文件夹
例2:仅获取当前目录下的文件路径、文件夹路径
def get_filepath(dir_path):
file_list = os.listdir(dir_path)
for file in file_list:
file_path = os.path.join(dir_path, file) # 拼接成路径
print(file_path)
if __name__ == '__main__':
get_filepath('./')
输出结果:
./request_data
./temp01.py
./testcase
./venv
例3:工作中实例
# 递归获取目录(文件夹)下的所有文件路径
import os
def get_filepath(dir_path, list_name):
"""递归获取目录下(文件夹下)所有文件的路径"""
for file in os.listdir(dir_path): # 获取文件(夹)名
file_path = os.path.join(dir_path, file) # 将文件(夹)名补全为路径
if os.path.isdir(file_path): # 如果是文件夹,则递归
get_filepath(file_path, list_name)
else:
list_name.append(file_path) # 保存路径
return list_name
res = get_filepath('./')
for i in res:
print(i)
输出结果:
…/log\bsp2_1_20210708.log
…/log\bsp2_1_20210709.log
…/log\bsp2_1_20210710.log
…/log\bsp2_1_20210711.log
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
原文链接:https://blog.csdn.net/weixin_43791511/article/details/100662288
栏目列表
最新更新
求1000阶乘的结果末尾有多少个0
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
SQL Server 中的数据类型隐式转换问题
SQL Server中T-SQL 数据类型转换详解
sqlserver 数据类型转换小实验
SQL Server数据类型转换方法
SQL Server 2017无法连接到服务器的问题解决
SQLServer地址搜索性能优化
Sql Server查询性能优化之不可小觑的书签查
SQL Server数据库的高性能优化经验总结
SQL SERVER性能优化综述(很好的总结,不要错
开启SQLSERVER数据库缓存依赖优化网站性能
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比