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)) # 将包含关键词的文档的文件路径,写入结果文件。使用换行符'\n'实现逐行写入的效果。
result_file.write(target_file + '\n') # 关闭结果文件
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)) # 将包含关键词的文档的文件路径,写入结果文件。使用换行符'\n'实现逐行写入的效果。
result_file.write(target_file + '\n') # 关闭结果文件
result_file.close()

最新文章

  1. PHP slim restfull框架nginx 配置
  2. Redis学习笔记一:基本安装和配置
  3. 使用ContentProvider管理联系人------搜索联系人
  4. JPA学习---第十节:JPA中的一对一双向关联
  5. Eclipse或Myeclipse常用快捷键组合详解
  6. const和#define的区别
  7. input输入框的各种样式
  8. Class.forName、Class.class(属性)、getClass()的区别
  9. 如何使用命令提示符进入mysql
  10. passwd命令使用
  11. [HNOI 2017]影魔
  12. 架构之微服务(etcd)
  13. 【Python】This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck
  14. Vue入门笔记(二)--基础部分之条件渲染
  15. pandas缺失值处理
  16. ZH奶酪:利用CSS将checkbox选项放大
  17. 七牛文件上传-python
  18. 20145310 Exp8 Web基础
  19. 手动安装 pygame
  20. C#中DateTime详解

热门文章

  1. [LeetCode题解]92. 反转链表 II | 一次遍历 + 反转
  2. vue项目中echarts属性总结
  3. 不是吧!做了两年java还没弄懂JVM堆?进来看看你就明白了
  4. ABBYY FineReader 15 PDF有哪些好用的功能?
  5. 【Camtasia教学】如何添加光标效果
  6. C++ cout格式化输出完全攻略
  7. ClassLoader分类
  8. ECS服务器快速迁移
  9. 区块链V1版本实现之五
  10. websocket简单实现五子棋即时对战功能