2013-04-26 38 views
-2
f=open('julyTemps.txt') 
for li in f.readlines(): 
    data = li.strip().split(' ') 
    print data[1] 

此代碼給我一個超出範圍的錯誤和列表的長度是3 請幫助打印出第i現在的位置元素在列表中的蟒蛇

+0

打印和你哪些數據是大概可以找出原因。 – CppLearner 2013-04-26 07:48:50

+0

請包含一個導致它失敗的'julyTemps.txt'的單行版本。 – RichieHindle 2013-04-26 07:49:53

+0

使用你的代碼和我自己的文本文件,它的工作原理。所以請提供完整的堆棧跟蹤。 – pwagner 2013-04-26 07:50:47

回答

1
with open('julyTemps.txt', 'r') as f: 
    for line in f: 
     data = line.strip().split(' ') 
     if len(data) > 1 
      print data[1] 
     else: 
      print 'this line does not split as it should:\n%s' % line 
+0

用於'with'語句的道具,但是你也應該去掉'.readlines()'來使代碼完美(readlines同時存儲內存中的所有行) – jamylak 2013-04-26 08:48:17

+0

@jamylak謝謝。就我個人而言,我可能會使用熊貓! – danodonovan 2013-04-26 09:03:38

+0

@danodonovan感謝此代碼完美工作。 – 2013-04-27 05:59:54