Python数据分析1—txt文件读写


一、打开文件

使用open()函数打开文件后,可以获得一个文件对象。

mode='r',以只读方式打开文件,默认模式。

mode='w',即写模式时,open()函数会打开一个文件只用于写入,如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被清空。如果该文件不存在,创建新文件。
mode='a',即追加模式时,open()函数会打开文件用于追加。如果该文件已存在,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

# 打开目标txt文件
target_file = './txt文件筛选与读写素材/Python项目1—猜大小.txt'
file = open(target_file, 'r', encoding='utf-8')  
# 使用文件对象.read()方法读取文件内容
content = file.read()
print(content)
file.close()   #关闭文件

二、判断文件中是否有关键词

# 打开目标txt文件
target_file = './txt文件筛选与读写素材/Python项目1—猜大小.txt'
file = open(target_file, 'r', encoding='utf-8')  
# 使用文件对象.read()方法读取文件内容
content = file.read()
# 判断文件中是否有关键词
key_word = input('请输入你要查找的关键词:')
if key_word in content:
    print(f'找到了,文件“{target_file}”中存在关键词“{key_word}”')
file.close()   #关闭文件

三、获得文件夹内所有文件名

import os
# 设置目标文件夹路径
path = './txt文件筛选与读写素材/'
# 获取文件夹下的所有文件名
files_list = os.listdir(path)
print(files_list)

四、筛选出所有txt文件

import os
# 设置目标文件夹路径
path = './txt文件筛选与读写素材/'
# 获取文件夹下的所有文件名
files_list = os.listdir(path)

# 筛选出所有txt文件
for file_name in files_list:
    if '.txt' in file_name:
        print('文件名:',file_name)
        file_path = path + file_name # 拼接出文件的相对路径
        print('文件路径:',file_path)

五、从全部文件中查找关键词

import os

# 从txt文件中查找是否存在关键词
def findKeyWord(target_file,key_word):
    # 打开目标txt文件
    file = open(target_file, 'r', encoding='utf-8')  
    # 使用文件对象.read()方法读取文件内容
    content = file.read()
    # 判断文件中是否有关键词
    if key_word in content:
        print(f'找到了,文件“{target_file}”中存在关键词“{key_word}”')
    file.close()   #关闭文件

def main():
    # 设置目标文件夹路径
    path = './txt文件筛选与读写素材/'
    # 获取文件夹下的所有文件名
    files_list = os.listdir(path)
    key_word = input('请输入你要查找的关键词:')

    # 筛选出所有txt文件
    for file_name in files_list:
        if '.txt' in file_name:
            file_path = path + file_name # 拼接出文件的相对路径
            findKeyWord(file_path,key_word)
main()

六、txt文件写入

import os

# 从txt文件中查找是否存在关键词
def findKeyWord(target_file,key_word):
    # 打开目标txt文件
    file = open(target_file, 'r', encoding='utf-8')  
    # 使用文件对象.read()方法读取文件内容
    content = file.read()
    # 判断文件中是否有关键词
    if key_word in content:
        print(f'找到了,文件“{target_file}”中存在关键词“{key_word}”')
    file.close()   #关闭文件

def main():
    # 设置目标文件夹路径
    path = './txt文件筛选与读写素材/'
    # 获取文件夹下的所有文件名
    files_list = os.listdir(path)
    # 存放查询结果,以追加模式打开,这样每次写入就添加在最后,不会将原内容清空
    result_file = open('./result.txt','a',encoding = 'utf-8')
    key_word = input('请输入你要查找的关键词:')

    # 筛选出所有txt文件
    for file_name in files_list:
        if '.txt' in file_name:
            file_path = path + file_name # 拼接出文件的相对路径
            findKeyWord(file_path,key_word)
            result_file.write(file_path + '\n')  # 将结果写入文件
    result_file.close() #关闭文件

main()

文章作者: 彭韦浩
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 彭韦浩 !
  目录