如何从 Python 中用户指定目录中的文件名创建列表?

How to create a list from filenames in a user specified directory in Python?

我想根据用户定义目录中的文件名在 Python 中创建一个新列表。

我无法完全理解 wiki 中的子流程语法,而且一些使用 PIPE 的命令似乎不受欢迎。

所以我会提示定义从哪个目录加载:

directory = raw_input("Path to directory: ")

然后在指定目录下运行subprocess.check_output(["ls", "*eg*.txt"])输出到list1.

你可以这样做:

import os
import glob

files = list(glob.glob(os.path.join(directory,'*.*')))

您可以只使用标准库中的函数来满足您的需求:

import os
list1 = os.listdir(directory)
print(list1)
#!/usr/bin/env python -u
# -*- coding: utf-8 -*-

from os import listdir
directory = raw_input("Path to directory: ")
files_dir =  listdir(directory)
newlist = []
for names in files_dir:
    if names.endswith(".txt"):
        newlist.append(names)
print newlist