【发布时间】:2016-03-28 00:19:57
【问题描述】:
我很难遍历与编写脚本的目录不同的目录中的文件。理想情况下,我还希望我的脚本能够遍历所有以 sasa 开头的文件。文件夹中有几个文件,例如 sasa.1、sasa.2 等...以及其他文件,例如 doc1.pdf、doc2.pdf
我在 Windows Powershell 中使用 Python 2.7 版
一切的位置
1) Python 脚本位置例如:C:Users\user\python_project
2) Main_Directory 例如:C:Users\user\Desktop\Data
3) Current_Working_Directory 例如:C:Users\user\python_project
主目录包含 100 个文件夹(文件夹 A、B、C、D 等) 这些文件夹中的每一个都包含许多文件,包括感兴趣的 sasa 文件。
尝试运行脚本
对于 1 个文件,以下工作:
脚本运行方式如下:python script1.py
file_path = 'C:Users\user\Desktop\Data\A\sasa.1
def writing_function(file_path):
with open(file_path) as file_object:
lines = file_object.readlines()
for line in lines:
print(lines)
writing_function(file_path)
但是,以下不起作用
脚本运行方式如下:python script1.py A sasa.1
import os
import sys
from os.path import join
dr = sys.argv[1]
file_name = sys.argv[2]
file_path = 'C:Users\user\Desktop\Data'
new_file_path = os.path.join(file_path, dr)
new_file_path2 = os.path.join(new_file_path, file_name)
def writing_function(paths):
with open(paths) as file_object:
lines = file_object.readlines()
for line in lines:
print(line)
writing_function(new_file_path2)
我收到以下错误:
with open(paths) as file_object:IO Error: [Errno 2] No such file or directory:'C:Users\\user\\Desktop\\A\\sasa.1'
请注意,我现在只处理一个文件,我希望能够遍历文件夹中的所有 sasa 文件。
【问题讨论】:
-
考虑使用
os.walk
标签: python file loops directory