python中的回溯错误

时间:2013-10-29 13:29:53

标签: python runtime-error traceback

当我在程序中使用float()方法时,我收到错误。你能帮帮我吗?我使用的是python 3.4.0a4。

这是该计划:

import urllib.request

price = 99.99
while price > 4.74:
   page = urllib.request.urlopen("http://www.beans-r-us.biz/prices.html")
   text = page.read().decode("utf8")
   where = text.find('>$')
   start_of_price = where + 2
   end_of_price = start_of_price + 4
   price = float(text[start_of_price:end_of_price])
Print("Buy!")

这是我得到的错误:

Traceback (most recent call last):
  File "F:/Python/python 8.py", line 11, in <module>
    price = float(text[start_of_price:end_of_price])
ValueError: could not convert string to float: '!DOC'

2 个答案:

答案 0 :(得分:0)

您似乎将网页的字符串切成了错误的位置,而text[start_of_price:end_of_price]的结果是!DOC

这不是有效数字,因此无法转换为浮点数。

答案 1 :(得分:0)

这是Head first Programming中给出的确切代码。链接被打破了,我得到了纠正它的输出。谢谢你的帮助......