作者a00011111143 (章魚燒)
看板Python
標題[問題] 有關於滑鼠點擊座標並寫入檔案
時間Fri Dec 7 14:04:33 2018
大家好,不好意思,本人剛碰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
→ s860134: close沒() 12/07 19:43
感謝!!!真的就是因為沒有()!!!謝謝~~
推 rexyeah: with statement不需要特別做close 12/08 08:48
→ s860134: 他後面點擊記錄的部分並沒有在 context manager 裡面 12/08 08:51
推 jameschiou: 我幫忙測試跑的結果是正確的... 12/09 00:29
※ 編輯: a00011111143 (140.121.175.100), 12/10/2018 14:17:38