Неподдерживаемый операнд всех математических символов и чисел?
Моя главная ошибка, которую я получаю:
Ошибка типа: неподдерживаемые типы операндов для /: 'str' и 'int'
#Name variables/imports. Ask usr for scale lengh and num of frets
import math
scalelenth = input ("please inter a number for scale \n > " )
constnum = 17.817
#Calculate Fret one distance
fretum = scalelenth / constnum
print("this is scale lenth %d " %scalelenth)
3 ответа
В Python3 input()
возвращает строку Вам необходимо преобразовать его в число:
scalelenth = int(input("Please enter a number for scale \n > "))
Если вы хотите включить десятичные дроби, используйте float()
:
scalelenth = float(input("Please enter a number for scale \n > "))
Вам нужно сначала преобразовать строку в плавающее, а затем выполнить вычисления:
fretum = float(scalelenth) / constnum
scalelength
является строкой (при условии, что вы используете python3.x) и str * float
не работает (что бы это делало?)
Исправление заключается в преобразовании строки в число с плавающей точкой:
fretum = float(scalelength)/ constnum