TypeError: cone() missing 1 required positional argument: 'height'

John Dias

I am writing a program that calculates the volume of a cone given the diameter and height but I keep getting this

TypeError: cone() missing 1 required positional argument: 'height'

How do I fix this?

def main():
    measure = measurement()
    vol = cone(measure)

    print("\nThe volume of the cone is,", "%0.2f" % (vol))

def measurement():
    diameter = eval(input("Enter the diameter of the cones base:"))
    height = eval(input("Enter the height of the cone:"))
    return diameter, height

def cone(diameter, height):
    pi = 3.14
    radius = diameter / 2
    volume = (pi * (radius**2) * height) / 3
    return volume

main()
Martijn Pieters

You need to split out the two values returned by measurement. You have two options:

  1. Use tuple assignment and pass the two results to cone:

    diameter, height = measurement()
    vol = cone(diameter, height)
    

    Python expects measurement() to return two values in a sequence now and will assign those two values to diameter and height, respectively, before passing those two values separately to cone().

  2. Use argument expansion; this asks Python to apply all values in a sequence as separate arguments:

    measure = measurement()
    vol = cone(*measure)
    

    Note the * before the measure argument.

As for your measurement() function: you don't need to use eval(); it poses a security risk. Instead, use float() to interpret user input as real numbers:

def measurement():
    diameter = float(input("Enter the diameter of the cones base:"))
    height = float(input("Enter the height of the cone:"))
    return diameter, height

Also see Asking the user for input until they give a valid response for more advanced user-input techniques.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

TypeError: Missing 1 required positional argument: 'self'

From Dev

Pygame TypeError: missing 1 required positional argument:

From Dev

Pygame - TypeError: Missing 1 required positional argument

From Dev

TypeError: func1() missing 1 required positional argument: 'self'

From Dev

missing 1 required positional argument

From Dev

TypeError: missing 1 required positional argument: 'self' but the class is instanciated

From Dev

python smtp TypeError: sendmail() missing 1 required positional argument: 'msg'

From Dev

TypeError: get_params() missing 1 required positional argument: 'self'

From Dev

TypeError: classify() missing 1 required positional argument: 'featureset'

From Dev

TypeError: insert() missing 1 required positional argument: 'string'

From Dev

python TypeError: __new__() missing 1 required positional argument: 'namespace'

From Dev

Pandas DataFrame TypeError: quantile() missing 1 required positional argument: 'quantile'?

From Dev

TypeError: lemmatize() missing 1 required positional argument: 'word

From Dev

TypeError: __call__() missing 1 required positional argument: 'inputs'

From Dev

python decorator TypeError missing 1 required positional argument

From Dev

TypeError: <lambda>() missing 1 required positional argument: 'w'

From Dev

TypeError: on_message() missing 1 required positional argument: 'message'

From Dev

TypeError: delete() missing 1 required positional argument: 'indexPosition'

From Dev

tensorflow TypeError: ParseFromString() missing 1 required positional argument: 'serialized'

From Dev

TypeError: x missing 1 required positional argument: y

From Dev

TypeError: player_attack() missing 1 required positional argument: 'self'

From Dev

TypeError on Python. Missing1 required positional argument

From Dev

TypeError: __init__() missing 1 required positional argument: 'id'

From Dev

TypeError: str() missing 1 required positional argument: 'self'

From Dev

TypeError: insert() missing 1 required positional argument: 'string'

From Dev

Python TypeError: set() missing 1 required positional argument: 'value'

From Dev

TypeError: askopenfilename() missing 1 required positional argument: 'root' In [ ]:

From Dev

TypeError: grid_configure() missing 1 required positional argument: 'self'

From Dev

TypeError: insert() missing 1 required positional argument: 'chars'

Related Related

  1. 1

    TypeError: Missing 1 required positional argument: 'self'

  2. 2

    Pygame TypeError: missing 1 required positional argument:

  3. 3

    Pygame - TypeError: Missing 1 required positional argument

  4. 4

    TypeError: func1() missing 1 required positional argument: 'self'

  5. 5

    missing 1 required positional argument

  6. 6

    TypeError: missing 1 required positional argument: 'self' but the class is instanciated

  7. 7

    python smtp TypeError: sendmail() missing 1 required positional argument: 'msg'

  8. 8

    TypeError: get_params() missing 1 required positional argument: 'self'

  9. 9

    TypeError: classify() missing 1 required positional argument: 'featureset'

  10. 10

    TypeError: insert() missing 1 required positional argument: 'string'

  11. 11

    python TypeError: __new__() missing 1 required positional argument: 'namespace'

  12. 12

    Pandas DataFrame TypeError: quantile() missing 1 required positional argument: 'quantile'?

  13. 13

    TypeError: lemmatize() missing 1 required positional argument: 'word

  14. 14

    TypeError: __call__() missing 1 required positional argument: 'inputs'

  15. 15

    python decorator TypeError missing 1 required positional argument

  16. 16

    TypeError: <lambda>() missing 1 required positional argument: 'w'

  17. 17

    TypeError: on_message() missing 1 required positional argument: 'message'

  18. 18

    TypeError: delete() missing 1 required positional argument: 'indexPosition'

  19. 19

    tensorflow TypeError: ParseFromString() missing 1 required positional argument: 'serialized'

  20. 20

    TypeError: x missing 1 required positional argument: y

  21. 21

    TypeError: player_attack() missing 1 required positional argument: 'self'

  22. 22

    TypeError on Python. Missing1 required positional argument

  23. 23

    TypeError: __init__() missing 1 required positional argument: 'id'

  24. 24

    TypeError: str() missing 1 required positional argument: 'self'

  25. 25

    TypeError: insert() missing 1 required positional argument: 'string'

  26. 26

    Python TypeError: set() missing 1 required positional argument: 'value'

  27. 27

    TypeError: askopenfilename() missing 1 required positional argument: 'root' In [ ]:

  28. 28

    TypeError: grid_configure() missing 1 required positional argument: 'self'

  29. 29

    TypeError: insert() missing 1 required positional argument: 'chars'

HotTag

Archive