Я хочу отделить годовой номер шаблона от строки в python и экспортировать их во второй строке в файле Excel - PullRequest
0 голосов
/ 18 апреля 2020

Я хочу, чтобы этот код считывал папку и разделял заголовки файлов на два списка имен и годов, а затем имена в одном столбце и годы в другом в файле excel с помощью python. Моя проблема в том, что когда я пытаюсь сопоставить год и отделить его от строки, чтобы экспортировать во второй столбец, совпадение иногда совпадает с числами, которые меньше 4 чисел. Я хотел бы, чтобы это было всего лишь число 4 di git и ничего больше, независимо от того, где оно находится в имени файла (начало, конец, середина).

вот мой код:

import os
import re
import xlsxwriter

workbook = xlsxwriter.Workbook('titles.xlsx') 
worksheet = workbook.add_worksheet()
row = 0
column = 0

filenames = [ (os.path.splitext(p)[0]) for p in os.listdir("W:\\titles\\")if "." in p ]   
names=[]
years=[]
years2=[]
subst = {"[":"","]":"","'":""}
for i in filenames:
    res = re.findall(r'(\d{4,})', i) 
    years.append(str(res))
    names.append(i.strip(str(res)))
for i in names:
    print(i)
def replace(string, dictionary, lista):
    for item in years:
        for item in dictionary.keys():
            string = string.replace(item, dictionary[item])
    lista.append(string)
for i in years:
    replace(str(i), subst, years2)

worksheet.write(0,0,"names")
worksheet.write(0,1,"years")

worksheet.write_column(1,0, names)
worksheet.write_column(1,1, years2)


workbook.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...