看板 Python 關於我們 聯絡資訊
感謝版上熱心先進指教 上次的排版問題已經試出解決方法 但當我進一步嘗試時 又有其他問題 想請教大家 這是我目前的程式 運作ok https://pastebin.com/nrARFVRd 我的問題如下 1.請問如何移除格線(箭頭藍色) https://imgur.com/a/G1kuUOJ 2.如何真的使用檔案 我用GUI的OPEN開檔案之後 實際上程式不會被開啟 而是在命令提示字元上出現預設字樣 https://imgur.com/a/q5tUet6 請問要如何設定程式碼才能夠使用檔案 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.180.88 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1560674654.A.69D.html
chliu6: 修改tk.Menu(menubar, tearoff=0)可去除格線 06/16 23:22
chliu6: askopenfilename只會傳回被選到的檔案路徑 不會幫你打開檔 06/16 23:26
alubasteve: 給chliu6,多謝指教,去格線我試出來了 06/17 22:06
alubasteve: https://pastebin.com/bpb28VRE 06/17 22:06
alubasteve: 我想再請教打開檔案的部份,如果不用askopenfilename 06/17 22:07
alubasteve: 您推薦改用哪個指令比較適合 06/17 22:07
alubasteve: 我改用askopenfile也沒用https://reurl.cc/Mx6y3 06/17 22:15
alubasteve: 請問我誤會文章意思了嗎 06/17 22:15
chliu6: https://reurl.cc/e4MaR 06/18 08:17
alubasteve: 給chliu6,感謝您給的網頁,我已經將程式調整成這樣 06/18 22:49
alubasteve: https://pastebin.com/c5dfgbpC但反而有問題 06/18 22:50
alubasteve: 會說https://imgur.com/a/HeWXmmO,請問我那邊弄錯了 06/18 22:56
art1: 因為 open 是 python 內建函數,而你覆寫了 06/18 23:34
art1: 要不然就是你的縮排混進了 tab,但其他的縮排卻是空格 06/18 23:37
chliu6: 你的縮排有問題 自己看一下 06/19 22:01
chliu6: 還有在open()函式最後一行要加上file.close() 06/19 22:02
alubasteve: 給chliu6+art1,感謝兩位的指點,我把程式修改了 06/19 22:31
alubasteve: https://pastebin.com/ddaHhFmb 而且我把第7+8行 06/19 22:32
alubasteve: 的縮排問題修正了,也追加了第9行的file.close() 06/19 22:33
alubasteve: 但問題依然存在https://imgur.com/a/cAl8dMt 06/19 22:36
chliu6: https://reurl.cc/08rb6 06/19 23:30
art1: 假設你的縮排都統一成使用空格了,請修改你的open函式名稱 06/20 17:22
alubasteve: 給chliu6,感謝您的協助,這次程式叫的出來,但恕我愚昧 06/20 22:23
alubasteve: 我實在看不出差異何在,我的縮排都是用tab了,起初有 06/20 22:28
alubasteve: TAB也有4次空格但我修正了,所以應該跟您的都一樣 06/20 22:30
alubasteve: 但結果就是不一樣,可以請您告訴我哪裡漏看了嗎 06/20 22:31
alubasteve: 給art1,我不明白open函式名稱哪裡出錯,可以請您 06/20 22:33
alubasteve: 一下嗎,我就只差那一點好不甘心 06/20 22:33
alubasteve: 指點 抱歉漏字 06/20 22:49
art1: 去找可以把空白差異標示出來的編輯器,如Notepad++或Sublime 06/21 00:36
art1: 因為 python 有個內建函式也叫 open 06/21 00:38
chliu6: 我用ultraedit看 06/21 08:03
alubasteve: 給兩位,我用很搞笑的方法試出來了,我用Sublime 06/21 23:22
alubasteve: 因為我看到這篇文章https://reurl.cc/LrXZK 06/21 23:24
alubasteve: 雖然我不會用文章提的Preferences→Settings User 06/21 23:24
alubasteve: 因為我的Sublime沒這選項https://imgur.com/a/UqUwESC 06/21 23:27
alubasteve: 但是我還是知道問題出在哪了程式的第6行的if 06/21 23:28
alubasteve: 前面不是tab而是4次空格,但我用Atom看時就呈現是tab 06/21 23:29
alubasteve: 所以我一直試不出來,只是如今有一點我想請問 06/21 23:30
alubasteve: 我打開GUI之後https://imgur.com/a/1WSg7i7 開檔案 06/21 23:34
alubasteve: https://imgur.com/a/TXy3PYD 檔案我也確定能跑 06/21 23:36
alubasteve: 結果變成這樣https://imgur.com/a/tPZfmwL 跟我想像的 06/21 23:48
alubasteve: 差很多,我以為可以出現一個畫面跳出程式碼本身 06/21 23:49
alubasteve: 我哪邊誤會了嗎 06/21 23:49
art1: 那是編碼錯誤的訊息,要用內建的 open() 去改變編碼 06/22 00:07
art1: google How to add encoding in python askopenfile 06/22 00:08
alubasteve: 給art1,我不大明白"要用內建的 open() 去改變編碼" 06/22 10:33
alubasteve: 我已經把open的函式名稱修改了,變成open_file 06/22 10:37
alubasteve: https://imgur.com/a/Rcpy6rq還是行不通 06/22 10:38
alubasteve: 我另外參考這個網頁https://reurl.cc/8MqOM 06/22 10:44
alubasteve: 程式碼改成https://pastebin.com/vCJ9wvJU 但依然失敗 06/22 10:54
alubasteve: https://imgur.com/a/OBauhgE結果變成這樣 06/22 11:08
art1: 你要學會看懂錯誤訊息,open直接用就好,前面不用加codecs. 06/22 12:25
art1: 而且你給的https://pastebin.com/vCJ9wvJU裏面還是def open 06/22 12:26
art1: 你查到的那個網頁是用 codecs 模組的 open 改變編碼,但內建 06/22 12:31
art1: 的 open 應該就能改變編碼了 06/22 12:31
alubasteve: 抱歉我還是失敗了https://pastebin.com/JzN1htQ8 06/22 16:53
alubasteve: https://imgur.com/a/71HYNT9 我目前的問題很明顯 06/22 16:55
alubasteve: 您很熱心,但是我資質甚淺,已經看不懂您在說什麼了 06/22 16:56
alubasteve: 我猜只好先完成我看的書上剩的最後一節,之後回頭找 06/22 16:57
alubasteve: 適當的教材從頭練功,事實上我問的問題已經超出我之前 06/22 16:57
alubasteve: 書上內容倒數第二節非常多了,很感謝您跟chliu6的指導 06/22 16:59
alubasteve: 讓我知道自己的不足 06/22 16:59
art1: 要看懂錯誤訊息阿 = =|||,那個錯誤訊息說那行的縮排錯了 06/22 17:27
art1: 把那行縮進去就好了 06/22 17:27
art1: 請把你的 def open()的 open 改個名字 06/22 17:28
alubasteve: 給art1,我改成這樣了https://pastebin.com/j7BpWLib 06/22 18:22
alubasteve: 首先open()改成openfile(),然後我把codec去掉 06/22 18:23
alubasteve: 之後我把縮排盡可能調整,最後終於程式叫得出來了 06/22 18:25
alubasteve: 只是我一選我要的檔案之後就結束了,完全沒東西跳出來 06/22 18:26
alubasteve: 我原本以為縮排要照我找的那個網頁,看來我搞錯了 06/22 18:29
alubasteve: 另外我試著保留codec, 程式叫得出來沒錯,但是也是選擇 06/22 18:33
alubasteve: 檔案之後就沒有反應 https://pastebin.com/wtJfq3gv 06/22 18:34
alubasteve: 請問是我預估錯.py程式執行的結果嗎 06/22 18:34
art1: 他只說有一行縮排錯誤,結果你把錯誤那行的上一行也縮排了 06/22 18:42
art1: 而且不要別人的程式碼寫什麼就照著複製,看不懂那行做什麼就 06/22 18:43
art1: 不要只會複製貼上 06/22 18:43
art1: 你最好去學一下 with 是怎麼用 06/22 18:44