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()

20201126-1 txt文件筛选与读写【】的更多相关文章

  1. cv.Mat 与 .txt 文件数据的读写操作

    1.按OpenCV格式实现的 .txt 文件读写 可以用 cvSave 和 cvLoad 实现,格式和 .xml/.yml 的差不多,不过如果专用与 OpenCV 的数据读写,还是用  .xml/.y ...

  2. C# 之三类文件的读写( .XML,.INI 和 .TXT 文件)

    笔记之用,关于三类.xml, .ini, .txt 文件的 C# 读写,请多多指教! 1,第一类:.xml 文件的读写 先贴上xml文件,下面对这个文件进行操作: <?xml version=& ...

  3. [转载]C#读写txt文件的两种方法介绍

    C#读写txt文件的两种方法介绍 by 大龙哥 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char ...

  4. Java逐行读写TXT文件

    package help; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; imp ...

  5. c# txt文件的读写

    在公司实习,任务不太重,总结一下c#关于txt文件的读写,以便以后有用到的时候可以查看一下.如果有写得不完整的地方还请补充 说明:本人C#水平可能初级都谈不上,高手轻喷,参考:http://www.c ...

  6. python 简单的txt文件读写

    1 读取txt文件.跟c相比,python的文件读写简直是方便的可怕 首先是读取文件 首先获得文件名称,然后通过 open函数打开文件,通过for循环逐行读出文件内容 #!python file by ...

  7. Java读写txt文件

    1.Java读取txt文件 1.1.使用FileInputStream: public static String readFile(File file, String charset){ //设置默 ...

  8. JavaScript读写脚txt文件

    1.cmd切换到“C:\Windows\System32>”下,执行“regsvr32 Scrrun.dll” 2.JavaScript读写txt文本代码如下,注意要发布到服务器上 <!D ...

  9. C#读写txt文件的两种方法介绍

    C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...

随机推荐

  1. 分布式 task_master / task_worker

    17:08:0317:08:04 在Thread(线程)和Process(进程)中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分 ...

  2. 理解Java对象:要从内存布局及底层机制说起,话说….

    前言 大家好,又见面了,今天是JVM专题的第二篇文章,在上一篇文章中我们说了Java的类和对象在JVM中的存储方式,并使用HSDB进行佐证,没有看过上一篇文章的小伙伴可以点这里:<类和对象在JV ...

  3. empty

    等效于false的都是true

  4. Maven一定要会的这几个知识!

    一.Maven概念 Maven是一个项目管理和整合工具.Maven为开发者提供了一套完整的构建生命周期框架.开发团队几乎不用花多少时间就能够自动完成工程的基础构建配置,因为Maven使用了一个标准的目 ...

  5. 深度分析:mybatis的底层实现原理,看完你学会了吗?

    前言 最近在和粉丝聊天的时候被粉丝问到jdbc和mybatis底层实现这一块的问题,而且还不止一个小伙伴问到,于是我似乎认识到了问题的严重性,我花了两天时间整理了一下自己的认识和网上查阅的资料写了这篇 ...

  6. 神秘、常用、多变的Binder

    今天说说神秘又常用又多变的Binder~ Binder是什么 Binder通信过程和原理 在Android中的应用 Binder优势 Binder是什么 先借用神书<Android开发艺术探索& ...

  7. LGOJ3101 [USACO14JAN]滑雪等级Ski Course Rating

    LGOJ3101 [USACO14JAN]滑雪等级Ski Course Rating [问题描述] The cross-country skiing course at the winter Mool ...

  8. 精尽MyBatis源码分析 - 插件机制

    该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...

  9. ⭐NES.css推荐⭐

    今天发现一个有意思的CSS框架,叫NES.css 官网地址:https://nostalgic-css.github.io/NES.css/ gitHub地址:https://github.com/n ...

  10. 3D显微镜笔记

    1. 三视图:能够正确反映物体长.宽.高尺寸的正投影工程图(主视图,俯视图,左视图三个基本视图)为三视图,这是工程界一种对物体几何形状约定俗成的抽象表达方式. 附上自己大二时候设计的减速器--设计了两 ...