我有許多 ddmmyy-00 格式的批處理檔案。如何轉換 ddmmyy 以進行排序?
for name in glob.glob(path, recursive=True):
basename=os.path.basename(name)
newname=os.path.spltext(basename)[0]
##what code do I have to put here to convert 'newname' to date format?##
uj5u.com熱心網友回復:
如果您有檔案名串列,下面的代碼是一個好的開始:
from datetime import datetime
def parse_item(input_str):
parts = input_str.split("-")
return {
"file_name": input_str,
"date": datetime.strptime(parts[0], '%d%m%y'),
"file_no": int(parts[1]),
}
inputs = [
"021222-01",
"011222-00"
]
mapping_files = [parse_item(input) for input in inputs]
sorted_files = sorted(mapping_files, key=lambda x: x["date"])
print(sorted_files)
# outputs
# [{'file_name': '011222-00', 'date': datetime.datetime(2022, 12, 1, 0, 0), 'file_no': 0}, {'file_name': '021222-01', 'date': datetime.datetime(2022, 12, 2, 0, 0), 'file_no': 1}]
uj5u.com熱心網友回復:
使用日期時間:
import datetime
datestring = '050621'
newname = datetime.datetime.strptime(datestring, '%d%m%y')
# datetime.datetime(2021, 6, 5, 0, 0)
newname可以與其他實體進行比較,因此可以進行排序。您可以在此處查看格式代碼的完整串列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/421500.html
標籤:
