作者jet96344 (等待好結果)
看板Python
標題Re: [問題] 請問日期讀取語法
時間Fri Mar 16 02:51:52 2012
※ 引述《jet96344 (等待好結果)》之銘言:
不好意思我把問題說的不清楚
我把code放上來
這是python code
http://0rz.tw/KEb1K
這是要跑的資料 含有日期與數據
http://dl.dropbox.com/u/10472787/python/CHIPR.day
我跑的時候出現的error 在第71行 錯誤訊息如下所示
File "PlotScripts/ComputeFutureSeasonalStreamFlowChanges.py", line 79, in <module>
TmpDate = Date( atoi( TmpLine[0] ), atoi( TmpLine[1] ), atoi( TmpLine[2] ) )
File "/usr/lib/python2.6/string.py", line 403, in atoi
return _int(s, base)
ValueError: invalid literal for int() with base 10: '2001-01-01'
不知道這樣有清楚一點嗎
謝謝推文中的各位有給我意見
但是好像還是不行
希望前輩們可以給我一點建議 謝謝各位
: 大家好
: 我在跑別人給我的CODE時有點小問題
: 我的資料日期格式是 2001-01-01 這樣
: 可是程式讀取日期的寫法是這樣
: TmpDate= Date( atoi( TmpLine[0]), atoi( TmpLine[1]), atoi( TmpLine[2]))
: 請問各位前輩我應該怎麼修改才可以讀取我格式
: 直接在中間加 - 嗎?
: 先謝謝各位不吝指教
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 128.46.109.158
1F:推 mantour:TmpLine = split( strip( lines[idx] ) ) 03/16 20:21
2F:→ mantour:改成 TmpLine = split( strip(lines[idx]) , "-" ) 03/16 20:21
3F:→ mantour:試試看 03/16 20:22
4F:→ uranusjr:看起來原本接受的格式應該是類似 2012 03 16 這樣 03/16 21:40
5F:→ uranusjr:split 在沒有設定分隔符時預設的分隔符沒有包括 '-' 03/16 21:41
6F:→ jet96344:m大我改了你的建議後還是有error 03/17 01:51
7F:→ jet96344:invalid literal for int(): 01 5.3934554E 這是錯誤訊息 03/17 01:51
8F:→ jet96344:是不是還需要改什麼才能讀 2001-01-01 <value>這種格式 03/17 01:52
9F:推 mantour:多用一次split先把 2001-01-01和 <value> 分開即可 03/17 02:02
10F:→ uranusjr:最簡單的改法:在 split 那行前面加一行 03/17 02:59
11F:→ uranusjr:lines[idx] = lines[idx].replace('-', ' ', 2) 03/17 03:01
12F:→ uranusjr:(當然效能上就不予置評) 03/17 03:01
13F:推 mantour:或是用 TmpLine=re.split("\s|-",strip(lines[idx])) 03/17 11:01
14F:→ ltroot:f = "%Y-%m-%d" 03/17 13:13
15F:→ ltroot:t = time.strftime(f, time.localtime()) 03/17 13:13
16F:→ ltroot:這樣呢@@? 03/17 13:14