Python中在DataFrame中列目录名:为何无法显示目录"2023"?
问题原因及解决方法
你的代码存在两个核心问题,导致无法正常显示目标目录"2023":
- 未导入
os模块:代码中调用了os.path.basename()但没有提前导入os库,运行时会直接抛出NameError,根本无法执行到生成DataFrame的步骤。 - 单个字符串无法直接赋值给DataFrame列:
os.path.basename(directory)返回的是单个字符串"2023",而Pandas的DataFrame列要求接收可迭代对象(比如列表、数组),直接赋值会触发ValueError提示长度不匹配。
修正后的代码如下:
import pandas as pd import os # 补充导入os模块 df = pd.DataFrame() directory = "C:\\Users\\Downloads\\FL\\2023" # 将单个字符串包装为列表,匹配DataFrame列的赋值要求 df["Directory"] = [os.path.basename(directory)] df
运行这段代码后,就能在DataFrame中正确显示"2023"这个目录名称了。
内容的提问来源于stack exchange,提问作者WhoamI
相关产品推荐
相关产品推荐

