테스트 사이트 - 개발 중인 베타 버전입니다

파이썬 질문입니다!!

글개그래 4년 전 조회 3,612

</p>

<pre>
import requests
from bs4 import BeautifulSoup
from io import StringIO

def return_print(*message):
    io = StringIO()
    print(*message, file=io, end="")
    return io.getvalue()


source = requests.get("<a href="https://finance.naver.com/marketindex/").text" target="_blank" rel="noopener noreferrer">https://finance.naver.com/marketindex/").text</a>
soup = BeautifulSoup(source, "html.parser")
hotKeys = soup.select("span.value")

index = 0


while True:
    way = input("1과 2중 고르시오(1:국내에서 해외 / 2:해외에서 국내) : ")
    sum = int(input("금액을 입력하시오(원) : "))

    for key in hotKeys:
        index += 1
        print("US"," : ", key.text,"원/달러")
        b = return_print(key.text)
        if index >= 1:
            break
    c = float(b)</pre>

<p>

 

ValueError: could not convert string to float: '1,082.50'

와 같은 에러가 계속해서 발생합니다. 부탁드립니다~!

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

4년 전

</p>

<p>  c <span class="token operator">=</span> <span class="token function">float</span><span class="token punctuation">(</span>b<span class="token punctuation">)</span>

----->   c <span class="token operator">=</span> <span class="token function">float</span><span class="token punctuation">(</span>b.replace(',','') <span class="token punctuation">)</span></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

글개그래
4년 전
감사합니다!!

댓글을 작성하려면 로그인이 필요합니다.

m
4년 전

'1,082.50' 이 값을 float 로 넣을 수 없다는 건데요. 저 값은 "문자값" 이고 float는 숫자입니다. 먼저 문자값을 숫자로 바꾸셔야. 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인