Mysql
 sql >> Baza danych >  >> RDS >> Mysql

błąd podczas wstawiania do mysql z Pythona for loop

Wygląda na to, że jedna z Twoich list zawiera tylko jeden element, który powoduje problem.Sprawdź wszystkie listy:

 items = [site.select('//h2').extract()]
 item = [site.select('//h3').extract()]
 item1 = [site.select('//meta').extract()]

Upewnij się, że są zgodne z oczekiwaniami.

for index,index1,index2 in range (len( items)),range(len(item)),range(len(item1))

ta składnia iteruje po wszystkich listach jednocześnie, jeśli którakolwiek z długości list nie pasuje, zostanie zgłoszony błąd wartości,

Aby lepiej zrozumieć swój problem, zobacz poniżej:

In [1]: l1 = [1,2,3]

In [2]: l2 = [4,5,6]

In [3]: l3 = [7]

In [4]: for index,index1,index2 in range (len( l1)),range(len(l2)),range(len(l3)):
   ....:     print "Hi"
   ....:     
   ....:     
Hi
Hi
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)

/home/avasal/<ipython console> in <module>()

ValueError: need more than 1 value to unpack

czy możesz spróbować, jeśli to możliwe:

for index,index1,index2 in zip(range (len( items)),range(len(item)),range(len(item1)))


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel 5.4 Łączenie dwóch kolekcji

  2. określanie ścieżki klasy dla samodzielnego jythona

  3. Czy możesz używać liczb jako nazw tabel w MySQL?

  4. Jak zaimplementować automatyczną aktualizację widoku, gdy tylko nastąpi zmiana w bazie danych w AngularJs?

  5. Zmienna zdefiniowana przez użytkownika SET w mysql zwraca null?