【发布时间】:2014-11-14 04:22:04
【问题描述】:
我的功能旨在从本网站获取数据并收集地震的纬度、经度、深度和震级。第二个函数“colorCode”应该获取地震的深度并返回一个颜色值。这就是我卡住的地方。我试图将数据设为浮点数,以便可以使用 if 语句并将其与 int 进行比较,但它仍然表示无法将其转换为浮点数。有什么想法吗? (如果我以不正确的格式发布代码,请见谅)
import urllib
#parseEarthquake: int --> list-of-float
def parseEarthquakeData(numberofearthquakes):
URLonWeb = urllib.urlopen("http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/all_month.csv")
lines = URLonWeb.readlines()
numberoflines = len(lines)
numberoftimes = 0
index = 1
myaccumalator = []
for numberoftimes in range(numberofearthquakes):
while index < (numberofearthquakes + 1):
line = lines[index]
data = line.split(",")
latitude = float(data[1])
longitude = float(data[2])
depth = float(data[3])
magnitude = float(data[4])
if magnitude < 2.5:
magnitude = 2.5
myList = [[latitude, longitude, depth, magnitude]]
myaccumalator = myaccumalator + myList
index = index + 1
return(myaccumalator)
#return [latitude, longitude, depth, magnitude]
def colorCode(numberofQuakes):
data = parseEarthquakeData(2)
data =str(data)
realdata = data.split()
if realdata[2] <34:
print 'orange'
if realdata[2] >=34<70:
print 'yellow'
if realdata[2] >=70<150:
print 'green'
if realdata[2] >=150<300:
print 'blue'
if realdata[2] >=300<500:
print 'purple'
if realdata[2] >=500:
print 'red'
【问题讨论】:
-
我认为您不希望所有这些
if语句都像这样缩进。 -
你得到了什么准确的错误信息?