文件操作课后习题--python

时间:2025-03-06 22:16:06

1.假设有一个英文文本文件,编写程序读取其内容,并将其中的大写字母变为小写字母,小写字母变为大写字母

with open("1_English.txt", 'r+') as f:
    s = f.read()
    print(s)
    ss = [i.swapcase() for i in s]
    f.seek(0)
    f.writelines(ss)
# writelines可以遍历列表写入文本文件 但是没有清空上一次,是追加?
# 之后把指针移到文件头部,正常写入了
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2. 编写程序,将包含学生成绩的字典保存为二进制文件,然后在读取内容并显示

import pickle
# 建立存储学生成绩的字典
d = {'112': 23, '113': 32, '114': 34, '115': 36}
print(d)
with open("D:\\代码\\python\\第七章文件操作课后习题\\2_Achievement.dat", 'wb') as f:
    pickle.dump(d, f)

with open("D:\\代码\\python\\第七章文件操作课后习题\\2_Achievement.dat", 'rb') as f:
    s = pickle.load(f)

print(s)

# pickle dump()将数据写入dat
# pickle load()将数据读出
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

3.用户输入一个目录和一个文件名,搜索该目录及其子目录中是否存在该文件

import os
a = input("请输入目录:")
b = input("请输入文件名:")
tuple_dirs = os.walk(a)

for root, dirs, files in tuple_dirs:
    if b in files:
        print('找到了')
        break
    else:
        print("没找到")

# 获取用户的文件路径,用walk函数搜索,如果文件名包含在返回的files的列表中,则找到了

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14