Exercise 1
import os # 设置文件夹路径为'工作文件夹',获取文件夹下的所有文件和文件夹名称 path = './工作文件夹/' files_list = os.listdir(path) # 设置需要查找的关键词 key_word = input("请输入要查找的关键词:") # 打开结果文件'./result.txt' result_file = open('./result.txt', 'a', encoding='utf-8') # 循环处理每一个文件 for file_name in files_list: # 判断文件名中是否包含'.txt' if '.txt' in file_name: # 找到文件时先打印提示 print("找到了文件:" + file_name) # 将文件夹路径和文件名拼接成该文件的相对路径 target_file = path + file_name # 打开文件,读取文件内容,然后关闭文件 file = open(target_file, 'r', encoding='utf-8') content = file.read() file.close() # 判断关键词是否在文件内容中 if key_word in content: # 匹配到关键词时先打印提示 print("妙啊,文件**{}**包含了关键词:{}".format(target_file, key_word)) # 将包含关键词的文档的文件路径,写入结果文件。使用换行符' '实现逐行写入的效果。 result_file.write(target_file + ' ') # 关闭结果文件 result_file.close()
Exercise 2 # 导入os模块 import os # 设置目标文件夹路径 path = './工作文件夹/' # 获取文件夹下的所有文件名 files_list = os.listdir(path) # 打印看看都有哪些文件 print(files_list)
--->
bash:codes$ python /home/python-class/root/codes/1.py
['Easter_Egg_2.txt', '图片1.jpeg', '06_01_2020会议记录.txt', '图片2.jpeg', '05_20_2020会议记录.txt', '05_21_2020会议记录.txt', '04_11_2020会议记录.txt', 'Easter_Egg_1.txt']
可以看到,我们得到了一个列表,这个列表里的每一个元素,都是【工作文件夹】内的文件或文件夹名称。而且每一个元素都是字符串类型。
Exercise 3 筛选txt文件 # 导入os模块 import os # 设置文件夹路径,获取文件夹下的所有文件和文件夹名称 path = './工作文件夹/' files_list = os.listdir(path) '''补充代码,打印出所有 txt 类型的文件名''' # 循环遍历每一个文件和文件夹名称 for file_name in files_list: # 判断文件名中是否包含'.txt' if '.txt' in file_name: # 找到文件时先打印提示 print("找到了文件:" + file_name) ---> bash:codes$ python /home/python-class/root/codes/2.py 找到了文件:Easter_Egg_2.txt 找到了文件:06_01_2020会议记录.txt 找到了文件:05_20_2020会议记录.txt 找到了文件:05_21_2020会议记录.txt 找到了文件:04_11_2020会议记录.txt 找到了文件:Easter_Egg_1.txt 终端输出了所有txt文件的名称
Exercise 4 实现 “文件筛选” 功能块 # 导入os模块 import os # 设置文件夹路径,获取文件夹下的所有文件和文件夹名称 path = './工作文件夹/' files_list = os.listdir(path) # 循环遍历每一个文件和文件夹名称 for file_name in files_list: # 判断文件名中是否包含'.txt' if '.txt' in file_name: # 找到文件时先打印提示 print("找到了文件:" + file_name) # 将文件夹路径和文件名拼接成该文件的相对路径 target_file = path + file_name # 打印文件的相对路径 print('文件的相对路径为: ' + target_file)
Exercise 5 实现 “读取文件” 功能块 # 目标文件是工作文件夹内的06_01_2020会议记录.txt文本文件 import os target_file = './工作文件夹/06_01_2020会议记录.txt' # 使用 open() 函数打开 06_01_2020会议记录.txt 文本文件 file = open(target_file,'r',encoding='utf-8') # 使用 文件对象.read() 方法读取文件内容 content = file.read() # 打印txt文本文件的内容 print(content) # 关闭文件对象 file.close()
Exercise 6 本题涉及的知识点: 1.提取文件夹下的所有文件和文件夹名称:os.listdir(path)。 2.使用input()函数获取关键词。 3.打开文件使用的open()函数的三个参数:①file:目标文件的路径;②mode:读模式 r、写模式 w、追加模式;③encoding:编码 utf-8。 4.for循环。 5.if条件判断语句。 6.文件对象的方法:1. 读:read();2.写:write();3.关:close()。 import os # 设置文件夹路径为'工作文件夹',获取文件夹下的所有文件和文件夹名称 path = './工作文件夹/' files_list = os.listdir(path) # 设置需要查找的关键词 key_word = input("请输入要查找的关键词:") # 打开结果文件'./result.txt' result_file = open('./result.txt', 'a', encoding='utf-8') # 循环处理每一个文件 for file_name in files_list: # 判断文件名中是否包含'.txt' if '.txt' in file_name: # 找到文件时先打印提示 print("找到了文件:" + file_name) # 将文件夹路径和文件名拼接成该文件的相对路径 target_file = path + file_name # 打开文件,读取文件内容,然后关闭文件 file = open(target_file, 'r', encoding='utf-8') content = file.read() file.close() # 判断关键词是否在文件内容中 if key_word in content: # 匹配到关键词时先打印提示 print("妙啊,文件**{}**包含了关键词:{}".format(target_file, key_word)) # 将包含关键词的文档的文件路径,写入结果文件。使用换行符' '实现逐行写入的效果。 result_file.write(target_file + ' ') # 关闭结果文件 result_file.close()