Python 当尝试访问多个文件的大小时,以下程序有什么问题?
当尝试访问多个文件的大小时,以下程序有什么问题Python 当尝试访问多个文件的大小时,以下程序有什么问题?,python,Python,当尝试访问多个文件的大小时,以下程序有什么问题 import os, glob cwd = "C:\\temp" files = glob.glob (cwd + "\\.jpg") with open ("file_size.txt", "w") as outfile: for file in files: get_size = os.path.getsize (file) outfile.writelines (get_size) 您不能将数字传递给
import os, glob
cwd = "C:\\temp"
files = glob.glob (cwd + "\\.jpg")
with open ("file_size.txt", "w") as outfile:
for file in files:
get_size = os.path.getsize (file)
outfile.writelines (get_size)
您不能将数字传递给
file.writelines()
用于将iterables写入文件:
将字符串序列写入文件。序列可以是任意的
iterable对象生成字符串,通常是字符串列表
用write()
替换writelines()
,并使用str(获取大小)
:
这将在文件中的新行上写入每个文件大小
或者,也可以将大小收集到列表中,然后通过writelines()写入:
glob.glob
使用shell扩展c:\temp\.jpg
将只匹配名为.jpg
的文件。你是说
files = glob.glob(cwd + r'\*.jpg")
(注意使用原始字符串前缀以避免转义反斜杠)
outfile.write(str(get_size))
filesizes = [str((os.path.getsize(file)) for file in files]
with open ("file_size.txt", "w") as outfile:
outfile.writelines(filesizes)
files = glob.glob(cwd + r'\*.jpg")