Click here to Skip to main content
15,558,869 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
I've defined one function which verifies that function argument is (list, tuple, dictionary and string) type of datatype using if-else statement and type function of python, but the problem is when i'm giving argument as list and set it matched perfectly but when i give tuple or string or dictionary it give error i'm not getting it beacause i'm a beginner so help needed

What I have tried:

def anything(arg):
        if type(arg) == list:
            print 'yes it\'s a list element : {}'.format(arg)
        elif type(arg) == set:
            print 'this is a set: {}'.format(arg)
        # elif type(arg) == dict(arg):
        #     print 'this is a dictionary element {}: {}'.format()
        elif type(arg) == tuple:
            print 'this is a tuple: {}'.format(arg)
        elif type(arg) == str:
            print 'this is a string: {}'.format(arg)
            print ('Invalid format')

# anything(arg = {'arg' : 'ashish'}) #NOT WORKING
anything(arg = ['ashish'])
anything(arg = {'set'})
anything(arg = ('tuple')) #HERE TUPLE ALSO PROVIDE TYPE STRING HOW??
anything(arg = 'string') 

Updated 17-Sep-18 4:20am

1 solution

This appears to work under Python 3, I suggest you upgrade. Also see 3. Data model — Python 3.4.9 documentation[^].
Share this answer

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900