如何在python中只从字符串中获取一部分

2024-09-28 22:40:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含以下字符串的列表:

total 71708
-rw-rw-rw- 1   gpatwprd        tmwdprd 221     Nov 19 12:36 20181116.Something name.6781773.CSV
-rw-rw-rw- 1   gpatwprd        tmwdprd 221     Nov 19 12:36 20171116.Something name.67885.CSV

我想摘录:

  1. 只有从20181116开始的文件名(或任何其他数据,这是一个动态数字)
  2. 仅包含.CSV和.XLSX的文件名

请注意,文件名的长度可以是可变的。你知道吗

在python3中如何实现这一点?你知道吗


Tags: csv数据字符串列表文件名动态数字xlsx
1条回答
网友
1楼 · 发布于 2024-09-28 22:40:06

下面的代码将打印所有所需条目的列表,以及仅包含所需文件名的列表数据.txt'是包含要使用的数据的文件。希望这有帮助!你知道吗

fileContent = open('data.txt','r');
readLinesfromContent = fileContent.readlines();

splitLinesforSpace = []
for line in readLinesfromContent:
    splitLinesforSpace.append(line.split())

requiredEntries = []
namesofRequiredFiles = []
for idx, x in enumerate(splitLinesforSpace):
    if len(x) == 10:
        if x[8].startswith('20181116'):
            if x[9].endswith('.CSV') or x[9].endswith('.XLSX'):
                requiredEntries.append(readLinesfromContent[idx])
                x[9] = x[9].split('.')
                #Following gives only names of files
                namesofRequiredFiles.append(x[9][0])

print(requiredEntries)
print(namesofRequiredFiles)

相关问题 更多 >