Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

What means "Too many values to unpack" message?

Subscribe

Get notified when there's activity on this post

This question has been flagged
python
4 Replies
175823 Views
Avatar
Mohammed Osman Gomda

Can any one give me the cause of the above error message

0
Avatar
Discard
Jethroso

Some context may help. Anyway, in python normally means you are trying to unpack a tuple with more values repect to target variables. Example: a,b = returnATupleOfMoreThan2Values()

Avatar
Nicolas Bessi
Best Answer

It is a Python exception that is the most ofen risen during assignation error: You try to do multiple assignment :

a, b = (1, 2, 3)  #  There is too many value to unpack ;)
a, b = (1, 2)  # That will work
a, b = 'base.main_company'.split('.')  # OK
a, b = 'base.main.company'.split('.')  # KO

In OpenERP it generaly comes when there is a dot in an XML ID. <record id='my.car' ... You should not use the dot when creating an XML ID. It can also be risen when you try to acces an item by his XML id and pass wrong parameters.

That the most common cases but it may also come from any other piece of code...

Regards

Nicolas

1
Avatar
Discard
Avatar
nitzsche
Best Answer

Unpacking in Python:

  • Imagine a function that returns multiple results, like a grocery list with several items.
  • Unpacking allows you to assign each item on the list to a separate variable in your code.
  • It's like taking things out of a bag one by one and putting them in designated spots.

The Error:

  • The error pops up when you have more "spots" (variables) than items (returned values) or vice versa.
  • If there are fewer variables than returned values, you're missing spots for some items, and Python doesn't know where to put them.
  • On the other hand, if there are more variables than returned values, you have extra empty spots and not enough items to fill them all.


0
Avatar
Discard
nitzsche

Python
def get_name_and_age():
return "Alice", 30 # Function returns a tuple with two values (name, age)

name, age, extra_variable = get_name_and_age() # Trying to unpack 3 values into 2 variables
https://slope3.io
In this example, the get_name_and_age function returns two values: "Alice" (name) and 30 (age). But the code tries to unpack these two values into three variables (name, age, and extra_variable). Since there's an extra variable, Python throws the "Too many values to unpack" error.

Avatar
hlipperjohn
Best Answer

ValueError is a standard Exception raised by various methods that perform range-checking of some kind to signal that a value provided to the method fell outside the valid range. Python functions can return multiple variables . These variables can be stored in variables directly. This is a unique property of Python , other programming languages such as C++ or Java do not support this by default. The valueerror: too many values to unpack occurs during a multiple-assignment where you either don't have enough objects to assign to the variables or you have more objects to assign than variables. 

 More info:    http://net-informations.com/python/err/value.htm  

 



0
Avatar
Discard
Avatar
Priyesh Solanki (pso)
Best Answer

Another case may be regarding looping over dictionary. If one is looping on any dictionary with key and val both without using iteritems(), one will face this error:

a = {'test': 1, 'test 1': 2} 
for k, v in a:
    print k

It will give you that error but instead of one should use it like this:

a = {'test': 1, 'test 1': 2}
for k, v in a.iteritems():
    print k

Still more information can be useful!

Thanks, Priyesh Solanki

0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
new python env
python
Avatar
0
Mar 25
2332
have no data in screen. read data in my own module from different model
python
Avatar
0
Dec 23
2955
How to insert value to a one2many field in table with create method? Solved
python
Avatar
Avatar
Avatar
Avatar
Avatar
5
Jul 25
232094
how to disable add product in sales of odoo 12
python
Avatar
Avatar
1
Dec 22
4145
Product moves
python
Avatar
Avatar
Avatar
2
Nov 22
3929
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now