Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Python выдаёт ошибку

Рома Параваев Ученик (131), закрыт 2 года назад
Выдает ошибку:int() argument must be a string, a bytes-like object or a real number, not 'list'

import math
import re

z = input("Введите число из которого хотите извлечь корень:")

x = re.findall(r'\d', z)

y = math.sqrt(int(x))

if int(z) >= 0:

print("Корень из числа" + x + "это" + y)

else:

print("Корень из числа" + x + "это" + y + "i")
Лучший ответ
Баланс Кенши Мыслитель (5789) 2 года назад
попробуй вместо if int(z) >= 0: написать if z >= 0:
Рома ПараваевУченик (131) 2 года назад
тогда возникает новая ошибка:питон не может сравнивать z с числом, так как z не число
Баланс Кенши Мыслитель (5789) Рома Параваев, ваще хз)) щас сам этот код закинул, пишет, что х должен быть строкой, меняю на строку - пишет, что числом быть должен)))
Остальные ответы
Vitness Просветленный (35230) 2 года назад
re.findall возвращает список.
Зачем ты вообще его здесь используешь?
Рома ПараваевУченик (131) 2 года назад
мне нужно отчистить вводуимую строку от минусов, и посторонних знаков, оставив только числа
Vitness Просветленный (35230) Рома Параваев, int("".join(x))
Рома ПараваевУченик (131) 2 года назад
Спасибо огромное, можете еще подсказать как убрать пробел перед i?
Рома Параваев Ученик (131) Рома Параваев, в выводе
Похожие вопросы