[問題] 有關於滑鼠點擊座標並寫入檔案

看板Python作者 (章魚燒)時間6年前 (2018/12/07 14:04), 6年前編輯推噓2(202)
留言4則, 3人參與, 6年前最新討論串1/1
大家好,不好意思,本人剛碰python第三天 因為在作業上有需求,所以需要寫一個程式來計算比較方便 目標: 1.讀檔畫圖 2.滑鼠點擊想要知道的位置 3.將座標寫入檔案中 利用google大神,目前已經突破不少難關 但是剛剛發現,我寫入檔案的座標並不是當下跑完的座標 也就是,我挑完點之後,去看文字檔,它呈現的是上一次的座標 (難怪第一次跑的時候,甚麼都沒有QQ) 是不是我哪邊邏輯有問題 程式碼如下: ################################################ import matplotlib.pyplot as plt #讀取要繪圖的檔案 filename = 'test1.txt' X,Y = [],[] with open(filename, 'r') as f: lines = f.readlines() for line in lines: value = [float(s) for s in line.split()] X.append(value[0]) Y.append(value[1]) plt.plot(X, Y) print("左鍵加點,右鍵取消新添加的點數,中鍵單擊結束") f.close #將滑鼠點擊座標寫入檔案 fp = open("triangle.txt",'w') pos=plt.ginput(30, timeout=-1) #(最大30點,無時間限制) print (pos, file=fp) fp.close ###################################################### 順帶一提 如果print(pos, file=fp) 只讓他單純 prine(pos) 在console視窗是正確的、當下跑的座標位置 所以我一直在想是不是在這邊有甚麼邏輯錯誤 不好意思,讓大家看東拼西湊的程式碼OTZ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.121.175.100 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1544162675.A.F67.html ※ 編輯: a00011111143 (140.121.175.100), 12/07/2018 14:12:53

12/07 19:43, 6年前 , 1F
close沒()
12/07 19:43, 1F
感謝!!!真的就是因為沒有()!!!謝謝~~

12/08 08:48, 6年前 , 2F
with statement不需要特別做close
12/08 08:48, 2F

12/08 08:51, 6年前 , 3F
他後面點擊記錄的部分並沒有在 context manager 裡面
12/08 08:51, 3F

12/09 00:29, 6年前 , 4F
我幫忙測試跑的結果是正確的...
12/09 00:29, 4F
※ 編輯: a00011111143 (140.121.175.100), 12/10/2018 14:17:38
文章代碼(AID): #1S2Wrpzd (Python)
文章代碼(AID): #1S2Wrpzd (Python)