2017-04-27 16 views
0
st1= str() 
c1= str() 
c2= str() 
EndCash = float() 

page = requests.get('http://www.xe.com/currencyconverter/convert/?Amount=' + 
        str(st1) + '&From=' + (c1) + '&To=' + (c2)) 
tree = html.fromstring(page.content) 
rate = tree.xpath('//span[@class="uccResultAmount"]/text()') 
symbol = tree.xpath('//span[@class="uccToCurrencyCode"]/text()') 

EndCash = rate + symbol 

我使用requests模块和lxml收获来自互联网汇率。这样做时遇到问题。我遇到了一个must be str, not float错误。我在tkinter中使用此行代码作为标签,因此输出结果为EndCash应出现在标签中。此代码独立工作,但在tkinter它不能在第一statememt工作不明白为什么这种类型错误:必须str的,不浮动发生异常

>>>TypeError: must be str, not float 

+0

哪行引发错误后trasform浮弦?你有没有堆栈跟踪? – khelwood

+0

该错误是从页= requests.get( 'http://www.xe.com/currencyconverter/convert/? 金额=' + STR(ST1)+ '&从=' +(C1)+ '&要=' + (c2)) – xys234

+0

@ xys234:你确定导致错误的线是什么?没有什么可以导致这种错误的声明,因为所有这些变量('st1','c1'和'c2')都是字符串。请[编辑]你的问题并添加一个完整的Traceback。 – martineau

回答

0

这样你的代码应该工作,你必须定义它们

page = requests.get('http://www.xe.com/currencyconverter/convert/?Amount=' + str(st1) + '&From='+str(c1) +'&To=' + str(c2)) 
tree = html.fromstring(page.content) 
rate = tree.xpath('//span[@class="uccResultAmount"]/text()') 
symbol = tree.xpath('//span[@class="uccToCurrencyCode"]/text()') 

EndCash = str(rate + symbol) 
+0

哪一行会引发错误? @ xys234 – Veltro

+0

该错误是从页= requests.get( 'http://www.xe.com/currencyconverter/convert/? 金额=' + STR(ST1)+ '&从=' +(C1)+'&要='+ (c2)) – xys234

+0

使用我的代码的错误是什么? @ xys234 – Veltro

相关问题