Dodawanie typu str() do float()

0
import math, balloons

def calcVolume():
    v = ''
    for x in range( balloons.balloonsNumber() ):
        v += 4 / 3 * math.pi * balloons.getRadius( x ) ** 3 / 1000
    return v

w sensie robie to na stronie na ktorej mam zadania z informatyki i pokazuje mi:

Traceback (most recent call last):
  File "lnu.py", line 193, in checkAnswer
    ret = func(*args)
  File "calcVolume.py", line 6, in calcVolume
    v += 4 / 3 * math.pi * balloons.getRadius( x ) ** 3 / 1000
TypeError: can only concatenate str (not "float") to str
2

A jaki wyjątek leci?

49

Moja kryształowa kula mówi... Co mówi debuger?

0
ledi12 napisał(a):

Moja kryształowa kula mówi... Co mówi debuger?

w sensie robie to na stronie na ktorej mam zadania z informatyki i pokazuje mi:

Traceback (most recent call last):
  File "lnu.py", line 193, in checkAnswer
    ret = func(*args)
  File "calcVolume.py", line 6, in calcVolume
    v += 4 / 3 * math.pi * balloons.getRadius( x ) ** 3 / 1000
TypeError: can only concatenate str (not "float") to str
46

Dodajesz stringa do typu numerycznego.

3

I odpowiedź masz w wyjątku, (podstawa czytać co program ci wypluwa)

TypeError: can only concatenate str (not "float") to str

Czyli, masz definicje v = '' ona w tym momencie jest Stringiem, a dalej próbujesz dodać coś do niej, dając v += jakiś number
Czyli rozwiązaniem będzie v = 0
Poczytaj o typach w Pythonie oraz duck typingu.

1
y4m1n00m0 napisał(a):
ledi12 napisał(a):

Moja kryształowa kula mówi... Co mówi debuger?

w sensie robie to na stronie na ktorej mam zadania z informatyki i pokazuje mi:
Traceback (most recent call last):
File "lnu.py", line 193, in checkAnswer
ret = func(*args)
File "calcVolume.py", line 6, in calcVolume
v += 4 / 3 * math.pi * balloons.getRadius( x ) ** 3 / 1000
TypeError: can only concatenate str (not "float") to str

To powinieneś podać w pierwszym poście - nawiasem mówiac my nie wiemy, co to linia 193

Co więcej, gdybyś ustawił kursor w linii 193 i przeczytał w/w komunikat, rozwiązałbyś w 60 sekund, a póki co minęło 60 minut

1 użytkowników online, w tym zalogowanych: 0, gości: 1