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

作者: a00011111143 (章魚燒)   2018-12-07 14:04:33
大家好,不好意思,本人剛碰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
作者: s860134 (s860134)   2018-12-07 19:43:00
close沒()
作者: rexyeah (ccccccc)   2018-12-08 08:48:00
with statement不需要特別做close
作者: s860134 (s860134)   2018-12-08 08:51:00
他後面點擊記錄的部分並沒有在 context manager 裡面
作者: jameschiou (阿邱)   2018-12-09 00:29:00
我幫忙測試跑的結果是正確的...

Links booklink

Contact Us: admin [ a t ] ucptt.com