#test.py
def file_size(fname): #该函数传入一个fname
return os.stat(fname).st_size #返回该文件的大小
#os.stat可以获取传入节点的很多信息,如:创建时间、修改时间、大小等等
#st_size是os.stat获取到内容中的一个,是文件的大小
def file_list(path = None): #获取传入路径的所有文件或目录,目录和文件可以用isdir和isdir来判断
if path == None: #先判断该函数是不是传入了空值,如果是空值,那么将path赋值为当前文件的路径
path = os.getcwd()
os.chdir(path) #然后修改系统的当前工作路径,有了该句之后再使用os.getcwd会变成,你修改的路径,而非系统默认的路径
#返回该路径下的所有文件
return [p for p in os.listdir(path) if os.path.isfile(p)]
#此句等于如下代码:
#ll = []
#for p in os.listdir(path):
# if os.path.isfile(p):
# ll.append(p)
#return ll
print(file_list()) #此句为file_list的测试语句
def total_size(path = None): #计算总计大小
if path == None:
path = os.getcwd()
os.chdir(path)
total = 0
for name in file_list(path): #从file_lsit函数中获取到各个文件
total = total + file_size(name) #使用file_size函数计算各个文件的大小,并求和
return total #返回计算后的总计大小
print(total_size(os.getcwd())) #调用核心函数