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

Python中获取用户输入文件夹绝对路径出现重复问题如何解决?

问题分析与解决

你的代码输出重复文件夹名的原因很明确:os.path.abspath()会基于当前工作目录拼接相对路径。如果运行代码时,你的当前工作目录已经是C:\Users\Desktop\Codes\Neon,输入Neon后,它会自动把当前目录和输入的名称拼接,最终得到C:\Users\Desktop\Codes\Neon\Neon。

修正方案

根据你的需求,提供几种可行的解决方式:

1. 直接获取当前文件夹的绝对路径

如果运行代码时你已经在目标文件夹里,不需要输入文件夹名,直接用os.getcwd()就能拿到当前目录的绝对路径:

import os
print("The absolute path is:", os.getcwd())

2. 基于上级目录拼接目标路径

如果你需要输入文件夹名,且目标文件夹在当前工作目录的上级目录下,可以先获取父目录再拼接:

import os

print("enter folder name")
folder_name = input().strip()

# 获取当前目录的父目录
parent_dir = os.path.dirname(os.getcwd())
target_path = os.path.join(parent_dir, folder_name)

if os.path.exists(target_path):
    print("The absolute path is:", os.path.abspath(target_path))
else:
    print(f"Folder {folder_name} doesn't exist in the parent directory.")

3. 完善原代码的路径处理逻辑

也可以让用户输入相对路径(比如../Neon),同时补充绝对路径的处理分支,确保所有输入都能正确输出:

import os

print("enter folder name or path")
folder_input = input().strip()

if os.path.isabs(folder_input):
    print("The absolute path is:", folder_input)
else:
    path = os.path.abspath(folder_input)
    print("The absolute path is:", path)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 07:15:56