第十章python实训
一、实验目的和要求
1、掌握基本文件操作(创建、打开、关闭、写入);
2、掌握目录操作的基本操作(创建、删除、遍历);
3、了解高级文件操作(删除文件、获取文件基本信息)。
二、实验环境 软件版本:Python 3.10 64_bit
三、实验过程

![]()
1 print("\n","="*10,"蚂蚁庄园动态","="*10)
2 file = open('message.txt','w') #创建或打开蚂蚁状元动态文件信息的文件
3 print("\n 即将显示......\n")
运行结果截图:

![]()


1 print("\n","="*10,"蚂蚁庄园动态","="*10)
2 file = open('message.txt','a') #创建或打开蚂蚁状元动态文件信息的文件
3 #写入一条动态信息
4 file.write("你的小鸡在QQ的庄园待了27分钟,吃了8g饲料被庄园主人赶回来了\n你使用了一张加速卡,小鸡撸起袖子开始双手吃饲料,进食速度大大加快。\nCC来到你的庄园,并提醒你无语的小鸡已经开始偷吃饲料21分钟,吃掉了6g。\n你的小鸡拿出了10g饲料奖励给CC。")
5 print("\n 写入一条动态......\n")
6 file.close() #关闭文件对象
运行结果截图如下:



![]()
1 print("\n","="*25,"蚂蚁庄园动态","="*25,"\n")
2 with open('message.txt','r') as file: #打开保存蚂蚁庄园动态信息的文件
3 message = file.read() #读取全部动态信息
4 print(message) #输出动态信息
5 print("\n","="*29,"over","="*29,"\n")
运行结果截图如下:



1 print("\n","="*35,"蚂蚁庄园动态","="*35,"\n")
2 with open('message.txt','r') as file: #打开保存蚂蚁庄园动态信息的文件
3 number = 0 #记录行号
4 while True:
5 number +=1
6 line = file.readline()
7 if line == '':
8 break #跳出循环
9 print(number,line,end='\n') #输出一行内容
10 print("\n","="*39,"over","="*39,"\n")
运行结果截图如下:


![]()
1 import os #导入os模块
2 path = "C:\\数据结构" #指定要遍历的根目录
3 print("【",path,"】目录下包括的文件和目录:")
4 for root,dirs,files in os.walk(path,topdown=True): #遍历指定目录
5 for name in dirs: #循环输出遍历到的子目录
6 print("●",os.path.join(root,name))
7 for name in files: #循环输出遍历到的子目录
8 print("◉",os.path.join(root,name))
9
运行结果截图如下:



1 import os #导入os模块
2 fileinfo = os.stat("message.txt") #获取文件的基本信息
3 print("文件完整路径:",os.path.abspath("mr.png")) #获取文件的完整数路径
4 #输出文件的基本信息
5 print("索引号:",fileinfo.st_ino)
6 print("设备名:",fileinfo.st_dev)
7 print("文件大小:",fileinfo.st_size,"字节")
8 print("最后一次访问时间:",fileinfo.st_atime)
9 print("最后一次修改时间:",fileinfo.st_mtime)
10 print("最后一次状态变化时间:",fileinfo.st_ctime)
运行结果截图如下:


运行结果如下:
1 import time
2 while True:
3 try:
4 count=int(input("请输入需要生成的文件数:"))
5 break
6 except Exception as e:
7 print("出现错误啦!")
8 for i in range(count):
9 file_name=time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))+".txt"
10 print('file '+str(i+1)+':'+file_name)
11 with open(file_name,'w') as file:
12 time.sleep(1)
13
14
运行结果截图如下:
![]()

1 import os
2 import shutil
3 while True:
4 try:
5 count=int(input("请输入要输入的文件夹:"))
6 break
7 except Exception as e:
8 print("该目录错误!")
9 path = "C:/10-2"
10 if os.path.exists(path):
11 shutil.rmtree(path)
12 for i in range(count):
13 os.makedirs(os.path.join(path,str(i+1)))
14
运行结果截图如下:



浙公网安备 33010602011771号