demo.py 主要作用為

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

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

  1. #!/usr/local/bin/python
  2. # -*- coding: UTF-8 -*-
  3.  
  4. from Tkinter import *
  5. import sys,glob,os
  6. reload(sys)
  7. sys.setdefaultencoding("utf-8")
  8.  
  9. class HelloApp(Frame):
  10. def __init__(self, master=None):
  11. Frame.__init__(self, master)
  12. self.grid()
  13. self.createWidgets()
  14. self.count=0
  15.  
  16. def createWidgets(self):
  17. self.QUIT = Button(self)
  18. self.QUIT["text"] = "QUIT"
  19. self.QUIT["command"] = self.quit
  20. self.QUIT.grid(row=0, column=0)
  21.  
  22. self.hi = Button(self)
  23. self.hi["text"] = "RUN"
  24. self.hi["command"] = self.run
  25. self.hi.grid(row=0, column=1)
  26.  
  27. self.text = Label(self)
  28. self.text["text"] = ""
  29. self.text.grid(row=1, column=0,columnspan=2)
  30.  
  31. def run(self):
  32. allfiles = glob.glob(r'../../../*.mp4')
  33. #allfiles = glob.glob(r'*.mp4')
  34. self.text["text"] = '執行開始'
  35. listname = ''
  36. for afile in allfiles:
  37. listname=listname + "," + afile
  38. new_filename = afile.replace('aaa', "")#print afile
  39. os.rename(afile, new_filename)
  40. self.text["text"] = '執行完成' + listname
  41.  
  42. if __name__ == '__main__':
  43. root = Tk()
  44. root.wm_title("imooc rename tool")
  45. #root.maxsize(800, 600)
  46. root.geometry('400x300')
  47. #root.resizable(width=True, height=True)
  48. app = HelloApp(master=root)
  49. app.mainloop()
  1. >py2applet --make-setup demo.py
    Existing setup.py detected, replace? [Y/n] y
    Wrote setup.py
  2.  
  3. >ls
    aaa001.mp4 aaa002.mp4 demo.py setup.py
  4. >python setup.py py2app
  5. .
    .
    .
    Done!
    >ls
    aaa001.mp4 aaa002.mp4 build demo.py dist setup.py
  6.  
  7. >ls ./dist
    demo.app
  8. >ls
    aaa001.mp4 aaa.mp4 build demo.py dist setup.py
  9.  
  10. >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. 自己动手写CPU之第七阶段(7)——乘累加指令的实现

    将陆续上传本人写的新书<自己动手写CPU>.今天是第30篇.我尽量每周四篇 亚马逊的销售地址例如以下.欢迎大家围观呵! http://www.amazon.cn/dp/b00mqkrlg8 ...

  2. MFC TreeCtrl 控件(一):简单使用

    本文描写叙述了 MFC 中的树形控件 TreeCtrl 的简单使用,内容包含数据项的加入.图标设置.提示信息设置等. 新建基于对话框的应用程序,加入一个 TreeCtrl ,为其定义一个控件变量 m_ ...

  3. PERCONA-TOOLKIT 工具的安装与使用2

    [root@server-mysql ~]# cd /usr/bin [root@server-mysql bin]# ls pt* pt-align pt-duplicate-key-checker ...

  4. swap函数的例子

    13.31为你的HasPtr类定义一个<运算符,并定义一个HasPtr的vector为这个vector添加一些元素,并对它执行sort.注意何时会调用swap. #include<iost ...

  5. [转] Android进阶——安卓接入微信,获取OpenID

    PS: sendAuthRequest拿到code,通过code拿到access_token和openId,access_token可以拿到用户的信息 http://blog.csdn.net/hao ...

  6. 自定义URL Scheme完全指南

    iPhone / iOS SDK 最酷的特性之一就是应用将其自身”绑定”到一个自定义 URL scheme 上,该 scheme 用于从浏览器或其他应用中启动本应用. 注册自定义 URL Scheme ...

  7. MAC终端显示隐藏文件,关闭显示

    1.显示隐藏文件夹显示:defaults write com.apple.finder AppleShowAllFiles -bool true (1)复制“defaults write com.ap ...

  8. [Form Builder]NAME_IN()与COPY()

    NAME_IN和COPY实际是间接引用,类似指针传递,而不是值传递... IF :VAR1 IS NULL ...  direct referenceIF NAME_IN ( :VAR1 ) IS N ...

  9. 深入理解计算机系统第二版习题解答CSAPP 2.7

    下面的函数将输出什么结果? const char *s = "abcdef"; show_bytes((byte_pointer) s, strlen(s)); 其中字母'a'~' ...

  10. Java并发——同步容器与并发容器

    同步容器类 早期版本的JDK提供的同步容器类为Vector和Hashtable,JDK1.2 提供了Collections.synchronizedXxx等工程方法,将普通的容器继续包装.对每个共有方 ...