我竟然发现了新大陆,感觉对列表已经啥也不清楚了
#pop()删除最后一项 l=[1,2,3] a=l.pop(-1) print(a) print(l) 结果: 3 [1, 2]
练习题:计算文件夹的大小
1.绝对路径:最完整的路径
2.相对路径:不完整的路径
import os path1=os.path.abspath(‘.‘) #该文件的绝对路径 path2=os.path.abspath(‘..‘) #该文件上一级的绝对路径 print(path1) print(path2) 结果: F:\pycharmproject\新建文件夹\day0327\作业 F:\pycharmproject\新建文件夹\day0327
os.path.join(path[,path2 ])路径的拼接:
b=os.path.join(path,‘/ac‘) print(b) b1=os.path.join(path,‘ac‘) print(b1) b2=os.path.join(path) print(b2) b3=os.path.abspath(path)#返回规范化path的绝对路径 print(b3) 结果: F:/ac F:\Python编程从入门到实践(高清中文版PDF+高清英文版PDF+源代码)\ac F:\Python编程从入门到实践(高清中文版PDF+高清英文版PDF+源代码) F:\Python编程从入门到实践(高清中文版PDF+高清英文版PDF+源代码) #注意看这里的区别
注意:第一个绝对路径之前的路径直接被忽略
b4= os.path.join(‘windows\temp‘, ‘c:\\‘, ‘csv‘, ‘test.csv‘) #将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。 print(b4) 结果: c:\csv\test.csv
计算文件夹的大小的过程如下:
import os
def get_size(path):
size=0
l=[path]
while l:
path=l.pop()
lst=os.listdir(path)
#列出指定目录下的所有文件和子目录,包含隐藏文件,并以列表的方式打印
for name in lst:
son_path=os.path.join(path,name)
#将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
if os.path.isfile(son_path):
size+=os.path.getsize(son_path)
else:
l.append(son_path)
return size
size=get_size(r‘F:\Python编程从入门到实践(高清中文版PDF+高清英文版PDF+源代码)‘)
print(size)
结果:
122364068
原文:https://www.cnblogs.com/Zhao159461/p/10608242.html