本文目录导读:

我来为您介绍Python读写本地TXT文件的几种常用方法。
基本读写操作
写入文件(三种模式)
# 方法1:覆盖写入(w模式)- 会清空原有内容
with open('example.txt', 'w', encoding='utf-8') as f:
f.write('这是第一行内容\n')
f.write('这是第二行内容\n')
# 方法2:追加写入(a模式)- 在文件末尾添加内容
with open('example.txt', 'a', encoding='utf-8') as f:
f.write('这是追加的内容\n')
# 方法3:写入多行(writelines)
lines = ['行1\n', '行2\n', '行3\n']
with open('example.txt', 'w', encoding='utf-8') as f:
f.writelines(lines)
print("文件写入完成!")
读取文件
# 方法1:一次性读取所有内容
with open('example.txt', 'r', encoding='utf-8') as f:
content = f.read()
print("完整内容:")
print(content)
# 方法2:逐行读取(适合大文件)
print("\n逐行读取:")
with open('example.txt', 'r', encoding='utf-8') as f:
for line in f:
# 去除行尾的换行符
print(line.strip())
# 方法3:读取所有行到列表
print("\n读取到列表:")
with open('example.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
for i, line in enumerate(lines, 1):
print(f"第{i}行: {line.strip()}")
实用案例
案例1:文件复制
def copy_file(source, destination):
"""复制文件内容到新文件"""
try:
with open(source, 'r', encoding='utf-8') as src:
content = src.read()
with open(destination, 'w', encoding='utf-8') as dst:
dst.write(content)
print(f"成功将 {source} 复制到 {destination}")
except FileNotFoundError:
print(f"源文件 {source} 不存在")
except Exception as e:
print(f"复制过程中出错: {e}")
# 使用示例
copy_file('example.txt', 'backup.txt')
案例2:统计文本信息
def analyze_text(filename):
"""统计文件中的字符数、单词数和行数"""
try:
with open(filename, 'r', encoding='utf-8') as f:
content = f.read()
chars = len(content)
words = len(content.split())
lines = content.count('\n') + 1
print(f"文件: {filename}")
print(f"字符数: {chars}")
print(f"单词数: {words}")
print(f"行数: {lines}")
except FileNotFoundError:
print(f"文件 {filename} 不存在")
# 使用示例
analyze_text('example.txt')
案例3:搜索和替换
def search_replace(filename, search_word, replace_word):
"""在文件中搜索并替换特定内容"""
try:
# 读取原文件内容
with open(filename, 'r', encoding='utf-8') as f:
content = f.read()
# 执行替换
new_content = content.replace(search_word, replace_word)
# 写回文件
with open(filename, 'w', encoding='utf-8') as f:
f.write(new_content)
count = content.count(search_word)
print(f"已将 {count} 处 '{search_word}' 替换为 '{replace_word}'")
except FileNotFoundError:
print(f"文件 {filename} 不存在")
# 使用示例
search_replace('example.txt', '内容', '数据')
案例4:读写配置文件
def save_config(config_dict, filename='config.txt'):
"""保存配置到文件"""
with open(filename, 'w', encoding='utf-8') as f:
for key, value in config_dict.items():
f.write(f"{key}={value}\n")
print(f"配置已保存到 {filename}")
def load_config(filename='config.txt'):
"""从文件读取配置"""
config_dict = {}
try:
with open(filename, 'r', encoding='utf-8') as f:
for line in f:
line = line.strip()
if '=' in line:
key, value = line.split('=', 1)
config_dict[key.strip()] = value.strip()
return config_dict
except FileNotFoundError:
print(f"配置文件 {filename} 不存在")
return {}
# 使用示例
# 保存配置
config = {
'username': 'admin',
'password': '123456',
'port': '8080'
}
save_config(config)
# 读取配置
loaded_config = load_config()
print("读取的配置:", loaded_config)
常用文件操作函数
import os
# 检查文件是否存在
if os.path.exists('example.txt'):
print("文件存在")
# 获取文件大小
size = os.path.getsize('example.txt')
print(f"文件大小: {size} 字节")
# 删除文件
os.remove('temporary.txt')
# 重命名文件
os.rename('old_name.txt', 'new_name.txt')
# 列出当前目录下的所有txt文件
txt_files = [f for f in os.listdir('.') if f.endswith('.txt')]
print("TXT文件列表:", txt_files)
注意事项
- 编码问题:始终使用
encoding='utf-8'处理中文文件 - 使用with语句:自动管理文件打开和关闭
- 异常处理:使用try-except处理文件不存在等错误
- 大文件处理:对于大文件,使用逐行读取而非一次性读取
这些案例涵盖了Python读写TXT文件的主要场景,您可以根据实际需求选择合适的方法。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播