Форум сайта python.su
Использую модуль xlrd для считывания:
veter = float(wind.row_values(d+2)[1]) print veter
ValueError: could not convert string to float:
0.0
1.0
2.0
3.0
4.4
6.3
8.5
12.0
print type(veter)
<type ‘float’>
<type ‘float’>
<type ‘float’>
<type ‘float’>
<type ‘float’>
<type ‘float’>
<type ‘float’>
<type ‘float’>
Отредактировано angeline (Дек. 26, 2016 05:58:43)
Офлайн
А вы не кастуйте к флоату, посмотрите для начала что такое
print wind.row_values(d+2)[1], type(wind.row_values(d+2)[1])
Офлайн
FishHook
А вы не кастуйте к флоату, посмотрите для начала что такое
def modul_skor(): h = 150 vys_flyugera = 10 u_j = veter * ((h / vys_flyugera) ** e_j) return u_j
File “Dpyto_p/rassey_modul_prizem_sk.py”, line 13, in modul_skor
u_j = veter * ((h / vys_flyugera) ** e_j)
TypeError: can't multiply sequence by non-int of type ‘float’
Отредактировано angeline (Дек. 26, 2016 05:59:34)
Офлайн
Нет никаких проблем с дробной степенью
Офлайн
FishHookПочему тогда я в ответ получаю вышеописанную ошибку?…
Нет никаких проблем с дробной степенью
Отредактировано angeline (Дек. 26, 2016 06:29:15)
Офлайн
angelineДа откуда ж я знаю? Вы ничего не дали для фиксации проблемы. У вас в стартовом посте одно, потом оказывается, что на самом деле другое. Дайте минимальный тестовый пример возникновения ошибки. Дайте код, который я могу вставить в ИДЕ, запустить и увидеть эксепшен. Мне нужно его проанализировать дебаггером и понять. А так, заказывайте гадалку с хрустальным шаром.
Почему тогда я в ответ получаю вышеописанную ошибку?…
Офлайн
FishHookможет ли это быть из-за используемой версии python 2.7?
Да откуда ж я знаю?
def modul_skor(): h = 150 vys_flyugera = 10 u_j = sr_god_veter * (pow((h / vys_flyugera), (e_j )) return u_j python/rassey/results_modul.xls')
Отредактировано angeline (Дек. 26, 2016 08:45:25)
Офлайн
angeline
Вы издеваетесь что ли?
В вашем примере вообще нет операции **
Офлайн
FishHookТо есть Вы хотите сказать, что функция pow() и ** - не являются тождественными функциями возведения в степень?
В вашем примере вообще нет операции **
def modul_skor(): h = 150 vys_flyugera = 10 u_j = sr_god_veter * ((h / vys_flyugera) ** e_j ) return u_j
Отредактировано angeline (Дек. 26, 2016 08:46:05)
Офлайн
Замечательно, а теперь дайте то, что я просил.
Мне не интересно, какие конкретно эксель-книги вы открываете. У вас же ошибка не в экселе, у вас ошибка в функции modul_skor. В этой функции не хватает двух переменных, чтобы эту функцию можно было запустить безо всего остального шлака, который к проблеме не относится и в данной теме он вообще не нужен. Покажите мне функцию, которой не нужны модули для работы с экселем, файлы и все остальное прочее. Вам нужно дать минимальный код, который воспроизводит ошибку.
я вас прошу вот об этом
def modul_skor(): h = 150 vys_flyugera = 10 e_j = 2.45 sr_god_veter = 25 u_j = sr_god_veter * ((h / vys_flyugera) ** e_j ) return u_j print(modul_skor())
Офлайн