我有一个文件目录,我想将其内容转换为所有小写的值。 对于特定文件,这可以正常工作:
with open(r'specific_file_directory', 'r') as file:
# Read the file into a string
text = file.read()
# Use the string's lower() method to make everything lowercase
text = text.lower()
print(text)
# Split text by whitespace into list of words
word_list = text.split()
但是,我想对文件夹中的每个文件执行此操作-可以吗?
此外,执行完此操作后,我还想将文件名保存到CSV列中。
为此:我尝试过(单独):
import os, csv
f=open("C:\directory\file.csv",'r+')
w=csv.writer(f)
for path, dirs, files in os.walk("C:\directory"):
for filename in files:
w.writerow(C:\directory\file.csv)
但是为此,我收到一条错误消息:
SyntaxError:扫描字符串文字时会停工
感谢您的帮助。
答案 0 :(得分:0)
我相信您的问题出在循环中
for path, dirs, files in os.walk("C:\directory"):
for filename in files:
w.writerow(C:\directory\file.csv)
“在扫描字符串文字时停止运行”位于os.walk()调用中-由于您使用的是Windows,因此需要转义\
。对于您的输出,如果您指定文件的完整路径,那么您还应该期望也必须对该路径中的所有\
进行转义。
先os.chdir("C:\\directory")
然后再使用
for _path, _dirs, files in os.walk(os.getcwd()):