日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

視頻合并時使用python批量修改文件名的方法

系統(tǒng) 2080 0

不知道大家有沒有遇到這樣的情況,比如視頻合并時文件名沒有按照正常順序排列,像這樣

? 視頻合并時使用python批量修改文件名的方法_第1張圖片 ?

可見,文件名排序是亂的。這個樣子合并出來的視頻一定也是亂的。所以得想辦法把文件名修改一下,讓軟件讀取出正確的順序。閑話少說,上代碼。

"""
注意:一、文件名除去擴展名必須以 '_' + 數(shù)字 結(jié)尾。
?二、convert.py 放在文件目錄。
?三、目錄中不能有多余文件
主要算法:
根據(jù)最大數(shù)字的位數(shù)添加0
例如,如果最大數(shù)字為123,那么位數(shù)為3位,
?1就要變成001、2變成002、23變成023,依次...
"""

            
import os

li = []
new_li = [] # 新文件名
null_li = [] # 不標(biāo)準(zhǔn)的文件名
filenames = os.listdir('./')

# 得到數(shù)字的最大位數(shù)
for filename in filenames:
 tmp = os.path.splitext(filename)[0] # 得到文件名
 if('_' in tmp): # 找到數(shù)字前的標(biāo)志
 num = tmp.split('_')[-1]
 li.append(num)
 else:
 null_li.append(filename)
max_len = len(max(li, key=len))
# ~ print(max_len)

# 新文件名
for filename in filenames:
 name = os.path.splitext(filename)[:-1] # 得到文件名
 name = '_'.join(name)
 ext = os.path.splitext(filename)[-1] # 得到擴展名
 if('_' in name): # 找到數(shù)字前的標(biāo)志
 name1 = name.split('_')[:-1]
 name1 = '_'.join(name1) #文件名
 num = name.split('_')[-1]
 quantity = max_len - len(num)
 name2 = '0' * quantity + num #數(shù)字名
 filename = name1 + '_' + name2 + ext
 new_li.append(filename)
# ~ new_li.sort()
# ~ print(filenames)
# ~ print('\n')
# ~ print(new_li)

# 檢查是否有不規(guī)范的文件名
if(len(filenames)-1 != len(new_li)):
 null_li.remove('convert.py')
 null_li = '、'.join(null_li)
 print("error: \""+ null_li + "\" 不以 '_' + 數(shù)字 結(jié)尾。")
 exit()

# 修改文件名
i = 0
for oldname in filenames:
 if (oldname != 'convert.py'):
 os.rename(oldname,new_li[i])
 print(oldname,'======>',new_li[i])
 i+=1
          

其中注意事項,在上述代碼里也說明了。運行成功后,再次查看

視頻合并時使用python批量修改文件名的方法_第2張圖片

可見,視頻已經(jīng)按照順序排列好了。

總結(jié)

以上所述是小編給大家介紹的視頻合并時使用python批量修改文件名的方,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 城步| 日喀则市| 白城市| 综艺| 湖南省| 南溪县| 仁怀市| 车致| 穆棱市| 汨罗市| 英山县| 贺州市| 汝州市| 彭州市| 济阳县| 松原市| 娄底市| 南和县| 噶尔县| 肥城市| 彭水| 汉阴县| 莱阳市| 柯坪县| 舒城县| 正宁县| 阿巴嘎旗| 林州市| 老河口市| 元谋县| 河东区| 宣城市| 霍州市| 肥东县| 和平县| 托克逊县| 周口市| 富川| 渝中区| 池州市| 涿州市|