老婆下班回來,興奮地給我說:代碼好厲害啊,一行代碼就解決了我的大問題,
我:什么問題?
老婆:我要把一個目錄下幾百個檔案的檔案名都復制到一個Excel中, 手工做很慢, 我百度了一下,一行代碼就實作了!
我不以為然:百度出來的啊, 我還以為是你寫的呢 !
(畫外音:我以為她上了什么Python小課,學了新技能)
老婆反擊:你不百度能寫出來嗎?
我:這個.....
暫停一下,給大家幾秒鐘,想想自己能不能不用Google/百度就搞定
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
聰明的你可能已經想到了解決辦法,但是我當時腦海中想的是:
嗯,我對Python還算熟悉,可以用它開發,
讀取一個目錄下的檔案名,好像有個什么os.listdir吧,我嘗試幾次就能搞定,
但是用Python如何操作Excel ?
可能得用第三方的軟體包,如何使用的API我可不知道,根據我在Java上的經驗,應該會有workbook, sheet 之類的概念, 雖然不難,但是不百度,不Google我是搞不定的,
我只好老老實實地承認:我不行,
不過我還是很好奇怎么能用一行代碼就把這個任務完成了,我覺得怎么也得幾十行吧!
我:你是怎么用一行代碼搞定的? 怎么實作的?
老婆:就是運行啊!
我:運行? 運行啥?
老婆:Windows 中不是有個運行嗎 ?
我徹底懵圈了!
看我一頭霧水, 她在手機上搜了一會兒,把螢屏遞給了我:


dir d:\123/b > d:\需要整理的檔案.xls
真就是一行代碼, 根本沒用什么Python!也沒用什么第三方軟體包!
只是利用了作業系統提供的命令列, IO 重定向 ,
簡單、直接!充分體現了命令列之美,
不過我確實不知道Windows和Excel還支持這個“騷操作”,輕視微軟的軟體了,
其實,即使不知道Excel可以這么玩, 我也知道dir命令可以輸出檔案名串列,然后復制到Excel中就行了, 關鍵是我根本就沒有往這個方向去想,
我一開始就跌入了用Python實作的細節陷阱中,
這就展示了我這個程式員(可能也包括你
)的一個特點:說嚴重點就是缺點, 那就是面對問題,第一反應是祭出代碼去解決,馬上去考慮用什么編程語言、API、 類別庫,這可能就走上了一條吃力不討論好的彎路,
代碼是最低層的東西,充滿了各種細節,用這些細節和API去解決問題,撰寫麻煩,除錯麻煩,出錯的概率很大,
這提醒我們,遇到問題要開闊視野,從底層細節中跳出來,多考慮下有沒有上層的、抽象程度更高的東西來解決業務問題, 它們封裝了細節,能站在一個比較高的角度解決問題,節省很多勞動,
第二天,老婆下班回家,又給我出了一道題:
還是昨天的需求,不過檔案名分為三個部分, 一個是編號,一個是部門,一個是真正的檔案名,中間用空格分開, 要把這三個資訊分成三列輸入到Excel, 這該怎么辦呢?
你看到的只是冰山一角!
點擊下方圖片,查看更多文章吧 !



下面是我開的一個備份號,防止被人投訴后失聯,請小伙伴們保存一下吧,
這個號不會空著,經常會發一下輕松有趣的東西,讓大家在緊張的作業之余樂呵一下,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301283.html
標籤:其他
上一篇:Linux專案:音樂播放器
