练习一:
-
在当前目录新建目录img, 里面包含多个文件,
文件名各不相同(X4G5.png) -
将当前img目录所有以.png结尾的后缀名改为.jpg
脚本如下:import random import string importos def gen_code(len=4): # 随机生成4位验证码 li = random.sample(string.ascii_letters+string.digits,len) return ''.join(li) def create_file(): # 随机生成100个文件名 li = { gen_code() for i in range(100)} os.mkdir('img') for name in li: os.mknod('img/' + name + '.png') # create_file() def modify_suffix(dirname,old_suffix,new_suffix): """ :param dirname: 要操作的目录 :param old_suffix: 之前的后缀名 :param new_suffix: 新的后缀名 :return: """ # 1.判断查找的目录是否存在,如果不存在 报错 if os.path.exists(dirname): # 2.找出所有以old_suffix(.png)结尾的文件 pngfile = [filename for filename in os.listdir(dirname) if filename.endswith(old_suffix)] # 3.将后缀名和文件名分开,留下文件名 basefile = [os.path.splitext(filename)[0] for filename in pngfile] # 4.重命名文件 for filename in basefile: oldname = os.path.join(dirname,filename+old_suffix) newname = os.path.join(dirname,filename+new_suffix) os.rename(oldname,newname) print('%s命名为%s成功' %(oldname,newname)) else: print('%s 不存在,不能操作...' %(dirname)) modify_suffix('imgs','.png','.txt')
练习二:
利用time.time()方法,我们可以计算两个时间点
之间的时间间隔,但是有些时候我们想要得到/etc/group
文件的最后a/c/m的时间,对应的年月日这些信息
并保存再文件date.txt文件中
import os
import time
time1 = os.path.getctime('/etc/group')
print(time1)
tuple_time = time.localtime(time1)
print(tuple_time)
year = tuple_time.tm_year
month = tuple_time.tm_mon
day = tuple_time.tm_mday
print(year,month,day)
with open('data.txt','a') as f:
f.write('%d %d %d' %(year,month,day))
f.write('\n')
data.txt文件内容: