from urllib.request import urlopen
page1 = urlopen("http://www.beans-r-us.biz/prices.html")
page2 = urlopen("http://www.beans-r-us.biz/prices-loyalty.html")
text1 = page1.read().decode("utf8")
text2 = page2.read().decode("utf8")
where = text2.find(">$")
start_of_price = where + 2
end_of_price = where + 6
price_loyal = text2[start_of_price:end_of_price]
price = text1[234:238]
password = 5501
p = input("Loyalty Customers Password? : ")
passkey = int(p)
if passkey == password:
while price_loyal > 4.74:
if price_loyal < 4.74:
print("Here is the loyal customers price :) :")
print(price_loyal)
else:
print("Price is too high to make a profit, come back later :) ")
else:
print("Sorry incorrect password :(, here is the normal price :")
print(price)
input("Thanks for using our humble service, come again :), press enter to close this window.")
Problem mam jest to, że działa aż dostanę się 4,74 części. Następnie przestaje i skarży się na typ nie podlegający umowie. Jestem całkowicie zdezorientowany, co to oznacza.Co oznacza błąd Unorderable Type w języku Python?
Na co narzeka? – dukevin
Czy nie jest "price_loyal" ciąg znaków (nawet jeśli zawiera liczby znalezione za pomocą 'find'), które próbujesz następnie porównać z wartością numeryczną (4.75)? Co się stanie, jeśli spróbujesz 'float (price_royal)' – Levon
W przeciwieństwie do innych popularnych języków skryptowych, python jest ściśle wpisany. Oznacza to, że jeśli chcesz przekonwertować ciąg na liczbę, musisz to zrobić jawnie. –