InterfaceError: Не удалось выполнить операцию;Тип Python numpy.int64 не может быть преобразован - PullRequest
0 голосов
/ 24 июня 2019

Я не знаю, где возникает проблема! Кто-нибудь может мне помочь?

CNX = mysql.connector.connect (пользователь = 'корень', пароль = 'suraj1697', хозяин = '127.0.0.1', базы данных = 'модель') mycursor = cnx.cursor () sql = "INSERT INTO model2 (длина, host_length, длина_пути, fd_length, tld_length, count1, count2, count3, count4, count5, count6, count_http, count_https, count_www, count_digit, count_letter, count_dir, count_ip, count_short), count_short (count_short) % d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d,% d ,% d)» печать (SQL) Данные = [] для меня в диапазоне (1, 32):

mycursor.execute («Модель CREATE DATABASE»)

mycursor.execute("ALTER TABLE model2(id INT AUTO_INCREMENT PRIMARY KEY,lenght INT,host_length INT,path_length INT,fd_length INT,tld_length INT,count1 INT,count2 INT,count3 INT,count4 INT,count5 INT,count6 INT,count_http INT,count_https INT,count_www INT,count_digit INT,count_letter INT,count_dir INT,count_ip INT,count_short INT)")
#record=[int(urldata['url_length'][i]),int(urldata['hostname_length'][i]),int(urldata['path_length'][i]),int(urldata['fd_length'][i]),int(urldata['tld_length'][i]),int(urldata['count-'][i]),int(urldata['count@'][i]),int(urldata['count?'][i]),int(urldata['count%'][i]),int(urldata['count.'][i]),int(urldata['count='][i]),int(urldata['count-http'][i]),int(urldata['count-https'][i]),int(urldata['count-www'][i]),int(urldata['count-digits'][i]),int(urldata['count-letters'][i]),int(urldata['count_dir'][i]),int(urldata['use_of_ip'][i]),int(urldata['short_url'][i])]
record=[urldata['url_length'][i],urldata['hostname_length'][i], urldata['path_length'][i], urldata['fd_length'][i], urldata['tld_length'][i], urldata['count-'][i],urldata['count@'][i], urldata['count?'][i], urldata['count%'][i], urldata['count.'][i], urldata['count='][i], urldata['count-http'][i], urldata['count-https'][i],urldata['count-www'][i], urldata['count-digits'][i], urldata['count-letters'][i],urldata['count_dir'][i], urldata['use_of_ip'][i], urldata['short_url'][i]]
data.append(record)

печать (данные) mycursor.executemany (SQL, данные) cnx.commit ()

1 Ответ

0 голосов
/ 24 июня 2019

Один из ваших входных данных имеет тип numpy.int6. Простым решением было бы заключить значение в int (). Правильный путь - использовать метод astype (), предоставленный numpy.

например:

variable.astype (INT)

...