1.使用文件内容
'''
在F盘的Python文件夹里面建立了一个名为python的文本文件,里面存储了今天早上的心情日记,现在我想要看看存储的文本里面’今天‘出现的次数
注意,读取出的文本文件内容默认为是字符串类型,必要情况下注意类型转换
'''
# 设置变量记录’今天‘出现的次数
n = 0
file_path = 'F:\\Python\\python.txt'
# 先看一下文件里面的内容
with open(file_path, encoding='utf-8')as file_object:
print(file_object.read().rstrip())
# 指定每次读取的字符字数为2来逐次读取数据内容并实现判断
with open(file_path, encoding='utf-8')as file_object:
contents = file_object.readline(2)
while contents:
if contents == '今天':
n += 1
contents = file_object.readline(2)
print(file_object.read().rstrip())
print(n)
今天是2021年3月22日
周一
今天早上吃的白菜猪肉馅的包子
还有鸡蛋
吃的很饱
说是气温18度
但是怎么这么冷
2
2.总结:
'''
在F盘的Python文件夹里面建立了一个名为python的文本文件,里面存储了截止今天我的心情随笔
注意,读取出的文本文件内容默认为是字符串类型,必要情况下注意类型转换
'''
file_contents = []
file_path = 'F:\\Python\\python.txt'
# 一次性读取出文件里的内容
print('一次性读取效果:')
with open(file_path, encoding='utf-8')as file_object:
print(file_object.read().rstrip())
print('\n')
# 逐行读取出文件的内容
print('逐行读取效果:')
with open(file_path, encoding='utf-8')as file_object:
contents = file_object.readline()
while contents:
print(contents.rstrip())
contents = file_object.readline()
print('\n')
# 借助列表读取出文本中的内容,并在with外使用
with open(file_path, encoding='utf-8')as file_object:
contents = file_object.readline()
while contents:
file_contents.append(contents.rstrip())
contents = file_object.readline()
print(file_contents)
3.利用replace()函数替换文件内容
file_contents = []
file_path = 'F:\\Python\\python.txt'
pre_contents = input('请输入被替换内容:')
modified_contents = input('请输入替换内容:')
# 逐行读取出文件的内容
print('逐行读取效果:')
with open(file_path, encoding='utf-8')as file_object:
content = file_object.readline()
while content:
file_contents.append(content.rstrip())
content = file_object.readline()
print(file_contents)
# 判断列表内每一个元素是否包含自己所要寻找的目标元素,如果包含则利用replace()函数进行替换
length = len(file_contents)
# 初始化索引值
n = 0
for content1 in file_contents[:]:
if pre_contents in content1 and n < length:
# 这里倘若不重新为 file_contents[n]赋值,里面保存的还是之前的数值,同理如果不直接指明 content1 = content1.replace(pre_contents,content1里面包含的也只是之前的内容
file_contents[n] = content1.replace(pre_contents, modified_contents)
else:
file_contents[n] = content1
n += 1
print(file_contents)