Python 在for循环中,Os.path.getsize返回到.py文件的文件夹

Python 在for循环中,Os.path.getsize返回到.py文件的文件夹,python,os.path,Python,Os.path,我试图做一个for循环,以获得文件夹中所有文件的文件大小。代码如下所示: import os, sys location = "/Users/username/Documents/Filmer" for folder, subfolders, filenames in os.walk(location): for filename in filenames: print(os.path.getsize(os.path.abspath(filename))) 我试图在

我试图做一个for循环,以获得文件夹中所有文件的文件大小。代码如下所示:

import os, sys
location = "/Users/username/Documents/Filmer"

for folder, subfolders, filenames in os.walk(location):

    for filename in filenames:
        print(os.path.getsize(os.path.abspath(filename)))
我试图在没有绝对路径的情况下使用它,并且也使用它。在我得到错误之前,它似乎只得到了两个文件的大小:

FileNotFoundError:[Errno 2]没有这样的文件或目录: '/Users/username/Google Drive/Data/Python/ATBSWP/Projekt/Family.Guy.2009.DVDRip.H264-BONE.mp4'

它指的是.py文件所在的文件夹,与os.walk()所在的目录完全不同。为什么它要回到那个文件夹?我在循环中的所有文件上使用绝对路径,所以我觉得它不应该

您可以尝试:

for root, subfolders, filenames in os.walk(location):
    for filename in filenames:
        print(os.path.getsize(os.path.join(root, filename)))
os.walk
返回的第一个参数实际上是根(完整路径)