You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python遍历文件夹生成列表时遇TypeError报错求助

问题解决:遍历指定文件夹获取子文件夹列表

错误原因拆解

  • append方法调用错误:你使用list.append(f)是直接调用列表类的方法,正确的操作应该是调用你创建的列表实例myFolder的append方法,即myFolder.append(f)。
  • 多余的内层循环:for item in f完全没必要,f是字符串格式的文件夹路径,遍历它会把路径拆成单个字符逐个处理,和你的需求完全不符。
  • 列表初始化语法错误:myFolder = list[]是错误写法,列表初始化要么用myFolder = list(),要么用更简洁的myFolder = []。

修正后的代码

import os

path = input("Where you want to look?")

myFolder = []
print("Here's your list of folders:")
for dirname in os.listdir(path):
    f = os.path.join(path, dirname)
    if os.path.isdir(f):
        myFolder.append(f)  # 给实例列表添加文件夹路径

print(myFolder)

可选优化写法

如果想让代码更简洁,可以用列表推导式一步完成:

import os

path = input("Where you want to look?")
myFolder = [os.path.join(path, d) for d in os.listdir(path) if os.path.isdir(os.path.join(path, d))]
print("Here's your list of folders:")
print(myFolder)

内容的提问来源于stack exchange,提问作者dotashope

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 06:55:26