python所有列表项目包含“ ./ && quot”;我想删除它

发布于 2025-01-20 18:19:59 字数 436 浏览 5 评论 0原文

我正在使用python横向进入目录中的所有子文件夹 为了写入OS命令。我需要所有子文件夹的列表,但是列表正在以“ ./”为之前返回,我希望将此子字符串同时从所有列表中删除

我的脚本:到目前为止我的脚本:

import os
import glob

file_list = glob.glob("./*")
file_list.remove("./script.py")
print(file_list)

返回列表

['./folder1', './folder2', './folder3', './folder4', './folder5']

我想要

['folder1', 'folder2', 'folder3', 'folder4', 'folder5']

I am using python to transverse into all sub folders in a directory
and in order to write up the os commands. I need a list of all sub folders but the list is returning with the "./" ahead of the folder names and I am looking to remove this sub string from all list itmes simultaneously

My script so far:

import os
import glob

file_list = glob.glob("./*")
file_list.remove("./script.py")
print(file_list)

returns list

['./folder1', './folder2', './folder3', './folder4', './folder5']

I would like

['folder1', 'folder2', 'folder3', 'folder4', 'folder5']

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

老旧海报 2025-01-27 18:19:59

这可以通过列表理解和 str.lstrip() 方法来完成。

folders = ['./folder1', './folder2', './folder3', './folder4', './folder5']

folders = [x.lstrip('./') for x in folders]

返回:

['folder1', 'folder2', 'folder3', 'folder4', 'folder5']

This can be done with a list comprehension and the str.lstrip() method.

folders = ['./folder1', './folder2', './folder3', './folder4', './folder5']

folders = [x.lstrip('./') for x in folders]

returns:

['folder1', 'folder2', 'folder3', 'folder4', 'folder5']

好久不见√ 2025-01-27 18:19:59

我更喜欢使用 pathlib 模块来处理这类事情。例如,如果您只想获取目录名称,可以这样做:

from pathlib import Path

file_list = [d.name for d in Path('.').iterdir() if d.is_dir()]
print(file_list)

I prefer using the pathlib module for this kind of stuff. For example, if you want to get just directory names, you can do this:

from pathlib import Path

file_list = [d.name for d in Path('.').iterdir() if d.is_dir()]
print(file_list)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文