demo.py 主要作用為

將同目錄下 *.mp4 檔案批次重新命名

例如:
aaa001.mp4 ---重新命名為--> 001.mp4
aaa002.mp4 ---重新命名為--> 002.mp4

#!/usr/local/bin/python
# -*- coding: UTF-8 -*- from Tkinter import *
import sys,glob,os
reload(sys)
sys.setdefaultencoding("utf-8") class HelloApp(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.grid()
self.createWidgets()
self.count=0 def createWidgets(self):
self.QUIT = Button(self)
self.QUIT["text"] = "QUIT"
self.QUIT["command"] = self.quit
self.QUIT.grid(row=0, column=0) self.hi = Button(self)
self.hi["text"] = "RUN"
self.hi["command"] = self.run
self.hi.grid(row=0, column=1) self.text = Label(self)
self.text["text"] = ""
self.text.grid(row=1, column=0,columnspan=2) def run(self):
allfiles = glob.glob(r'../../../*.mp4')
#allfiles = glob.glob(r'*.mp4')
self.text["text"] = '執行開始'
listname = ''
for afile in allfiles:
listname=listname + "," + afile
new_filename = afile.replace('aaa', "")#print afile
os.rename(afile, new_filename)
self.text["text"] = '執行完成' + listname if __name__ == '__main__':
root = Tk()
root.wm_title("imooc rename tool")
#root.maxsize(800, 600)
root.geometry('400x300')
#root.resizable(width=True, height=True)
app = HelloApp(master=root)
app.mainloop()
>py2applet --make-setup demo.py 
Existing setup.py detected, replace? [Y/n] y
Wrote setup.py >ls
aaa001.mp4 aaa002.mp4 demo.py setup.py >python setup.py py2app .
.
.
Done!
>ls
aaa001.mp4 aaa002.mp4 build demo.py dist setup.py >ls ./dist
demo.app >ls
aaa001.mp4 aaa.mp4 build demo.py dist setup.py >cp -r ./dist/demo.app ./
>ls
aaa001.mp4 aaa002.mp4 build demo.app demo.py dist setup.py

執行 demo.app

點選 RUN按鈕 執行批次重新命名

[記錄用]python py2app 檔案批次重新命名的更多相关文章

  1. 如何在 Visual Studio 2012 控制 TFS 版控時要忽略哪些檔案

    幾乎在任何一種版本控管的機制裡,都會遇到那些「不應該簽入到版本庫」的潛規則,以往我們在用 SVN 的時候,我就寫過幾篇文章要大家注意這點.最近都改用 TFS 做版控,因為大多使用 Visual Stu ...

  2. C++ 檔案、資料夾、路徑處理函式庫:boost::filesystem

    原帖:https://tokyo.zxproxy.com/browse.php?u=uG7kXsFlW1ZmaxKEvCzu8HrCJ0bXIAddA1s5dtIUZ%2FYzM1u9JI7jjKLT ...

  3. [Python學習筆記] 抓出msg信件檔裡的附件檔案

    想要把msg信件檔案的附件抓出來做處理,找到了這個Python 模組 msg-extractor 使用十分容易,但是這個模組是要在terminal裡執行,無法直接打在IDLE的編輯器上 所以稍微做了修 ...

  4. [Batch檔案筆記] 在UNC路徑中執行Batch檔

    為了讓其他人可以免安裝又可以執行python程式所以我把python portable版本 winpython 放在samba的空間共享但是使用者如果要開 winpython cammand prom ...

  5. [ASP.NET] 如何利用Javascript分割檔案上傳至後端合併

    最近研究了一下如何利用javascript進行檔案分割上傳並且透過後端.特地記錄一下相關的用法 先寫限制跟本篇的一些陷阱 1.就是瀏覽器的支援了 因為本篇有用到blob跟webworker 在ie中需 ...

  6. (C/C++) FILE 讀寫檔案操作

    在C/C++ 讀寫檔案操作比較常見應該是利用 FILE.ifstream.ofstream 在這篇筆記裡頭記錄 FILE.fstream 使用方法及操作 #include <iostream&g ...

  7. 何解決 LinqToExcel 發生「無法載入檔案或組件」問題何解決 LinqToExcel 發生「無法載入檔案或組件」問題

    在自己的主機上透過 Visual Studio 2013 與 IISExpress 開發與測試都還正常,但只要部署到測試機或正式機,就是沒辦法順利執行,卡關許久之後找我協助.我發現錯誤訊息確實很「一般 ...

  8. C# 選擇本機檔案並上傳

    參考自:http://www.dotblogs.com.tw/puma/archive/2008/11/07/5910.aspxhttp://www.codeproject.com/Articles/ ...

  9. 在 Server 端存取 Excel 檔案的利器:NPOI Library

    转处 http://msdn.microsoft.com/zh-tw/ee818993.aspx Codeplex 軟體套件(Package)資訊 套件名稱 NPOI 作者 tonyqus, huse ...

随机推荐

  1. jQuery Mobile方向感应事件

    在现在的智能手机中,都有对方向变换的自动感知功能,比如当手机方向从水平方向切换到垂直方向时,则会触发该事件.在jQuery Mobile中,可以通过orientationchange事件进行绑定,并且 ...

  2. 为 vsftpd 启动 vsftpd:500 OOPS: bad bool value in config file for: pasv_enable

    每行的值都不要有空格,否则启动时会出现错误,举个例子,假如我在listen=YES后多了个空格,那我启动时就出现.. 为 vsftpd 启动 vsftpd:500 OOPS: bad bool val ...

  3. [Javascript] Ex: concatAll, map and filter

    concatAll: Array.prototype.concatAll = function() { var results = []; this.forEach(function(subArray ...

  4. Andriod:如何卸载模拟器上已经安装的应用程序?

    根据学习对HelloWorld进行手术的时候,遇到了一个问题: 就是在修改了布局后,重新链接模拟器时报错: Installing helloworld.apk... Re-installation f ...

  5. 获取java项目 classpath目录

    this.getClass().getResource("/").getPath(); 从根目录获取载入文件: this.getClass().getResourceAsStrea ...

  6. Java开发之I/O读取文件实例详解

    在java开发或者android开发中,读取文件是不可避免的,以下对java开发中读取文件做了归纳和详解: 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 pa ...

  7. centos6 install mplayer(multimedia)

    step_1 http://wiki.centos.org/AdditionalResources/Repositories/RPMForge step_2 http://wiki.centos.or ...

  8. C#迭代语句

    1,do while语句 do语句重复执行语句或者语句块,直到指定的表达式为false为止.循环体如果为单个语句,可以不放在{}内,如果不是,那么必须放在{}内.如下面的代码 Codeint i=0; ...

  9. 理解C#中的继承

    继承 1.创建子类对象的时候,在子类对象中会为子类对象的字段开辟空间,也会为父类对象的所有字段开辟空间.只不过父类私有的成员访问不到而已. 2.base关键字可以调用父类的非私有成员. 3.子类的访问 ...

  10. andorid 平台调用Web Service , 图片传输

    今天学习了下android调用web service,进行图片传输 下面是代码详解: onActivityResult 方法在图片剪裁完成之后调用: protected void onActivity ...