为了账号安全,请及时绑定邮箱和手机立即绑定

找到许多文件中版本号最大的文件?

找到许多文件中版本号最大的文件?

HUWWW 2024-01-27 16:10:32
您好,我的文件夹中有 json 文件列表。['user_sample_v001.json', 'user_sample_v002.json', 'user_sample_v105.json']所以Python方式我正在尝试获取最新版本>>> for item in lst:...  print os.path.splitext(item.split("_")[-1])[0]v001v002v105给我喜欢这个的数字列表:>>> for version in versions:...  number = ""...  for num in version:...   if num.isdigit():...    number = "{0}{1}".format(number, num)...  nums.append(number)... >>> nums['001', '002', '105']然后我可以做 max(nums) 给我'105'然后我可以这样检查:for user_sample in lst:    if max_num in user_sample:        print user_sample这给了我“user_sample_v105.json”,它可以进一步优化准确性和性能吗?
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

您可以将max()函数与自定义key=函数一起使用:


import re


lst = ['user_sample_v001.json', 'user_sample_v002.json', 'user_sample_v105.json']


pattern = re.compile(r'_v(\d+)\.json')


m = max(lst, key=lambda k: int(pattern.search(k).group(1)))

print(m)

印刷:


user_sample_v105.json


查看完整回答
反对 回复 2024-01-27
  • 1 回答
  • 0 关注
  • 32 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信