Python Forum
List items verification for Integer type
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
List items verification for Integer type
#1
Hi All,

I want to verify if the list objects are integers are not. My code is failing at 0 index, when there is a float value or when there is a string value.

Please help.


num=0
z=['11, 12, 14', '20', '21, 23', '24', 'man', '1', '27', '28', '29.1', '30']
mydefectlist=[]
mydefectlist1=[]
mydefectlist2=[]

while num < len(z):
    z[num] = int(z[num])
    num +=1

for s in z:
    if (isinstance(s, int)):
        flag=0
        mydefectlist.append(s)
        print('int values:',mydefectlist)
    elif(isinstance(s, float)):
        mydefectlist1.append(s)
        print('float values:',mydefectlist1)
    elif(isinstance(s, str)):
        mydefectlist2.append(s)
        print('string values:',mydefectlist2)
    else:
        print('please check the list again', s)
Reply
#2
As far as I understand there is conversion to int, not verification.
I'm not 'in'-sane. Indeed, I am so far 'out' of sane that you appear a tiny blip on the distant coast of sanity. Bucky Katt, Get Fuzzy

Da Bishop: There's a dead bishop on the landing. I don't know who keeps bringing them in here. ....but society is to blame.
Reply
#3
Try this to see if that helps,

list1=['man12','11', '12', '14', '20', '21', '23', '24', 'man', '1', '27', '28', '29.1', '30']
mydefectlist=[]
mydefectlist1=[]
mydefectlist2=[]
 
for item in list1:
	try:
		if (isinstance(int(item), int)):
			mydefectlist.append(item)
	except ValueError:
		try:
			if (isinstance(float(item), float)):
				mydefectlist1.append(item)
		except ValueError:
			mydefectlist2.append(item)
		
print("int-->", mydefectlist)
print("float-->", mydefectlist1)
print("str-->", mydefectlist2)
Output:
python test1.py int--> ['11', '12', '14', '20', '21', '23', '24', '1', '27', '28', '30'] float--> ['29.1'] str--> ['man12', 'man']
Best Regards,
Sandeep

GANGA SANDEEP KUMAR
Reply
#4
Thanks Sandeep. This works for me. I guess, I was missing to use try-except. The ifelse logic wasn't working for me.
Reply
#5
One way (which does not require to define possible classes in chain of if-s) is to use defaultdict and class name:

>>> import collections
>>> lst = ['abc', 1, 2, 3, 4.3, [42]] 
>>> types = collections.defaultdict(list)
>>> for item in lst: 
...     types[type(item).__name__].append(item)
...
>>> types
defaultdict(list, {'str': ['abc'], 'int': [1, 2, 3], 'float': [4.3], 'list': [[42]]})
>>> for k, v in types.items(): 
...     print(f'{k} --> {v}') 
...                                                                 
str --> ['abc']
int --> [1, 2, 3]
float --> [4.3]
list --> [[42]]
>>> types['int']                                                    
[1, 2, 3]
I'm not 'in'-sane. Indeed, I am so far 'out' of sane that you appear a tiny blip on the distant coast of sanity. Bucky Katt, Get Fuzzy

Da Bishop: There's a dead bishop on the landing. I don't know who keeps bringing them in here. ....but society is to blame.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Change a list to integer so I can use IF statement buckssg 3 115 Yesterday, 02:58 AM
Last Post: bowlofred
  Verification of an excel file saleenahohn 2 254 Jul-09-2021, 06:56 AM
Last Post: Larz60+
  How can I get Python Bulk Email Verification Script With API? zainalee 1 487 Jun-06-2021, 09:19 AM
Last Post: snippsat
  You have any idea, how fix TypeError: unhashable type: 'list' lsepolis123 2 688 Jun-02-2021, 07:55 AM
Last Post: supuflounder
  Question about change hex string to integer sting in the list (python 2.7) lzfneu 1 541 May-24-2021, 08:48 AM
Last Post: bowlofred
  Feed List items with Integer euras 9 857 May-19-2021, 07:45 PM
Last Post: snippsat
  Parse String between 2 Delimiters and add as single list items lastyle 5 775 Apr-11-2021, 11:03 PM
Last Post: lastyle
  Sum of list items tristanfermat 2 617 Feb-06-2021, 12:04 PM
Last Post: tristanfermat
  What type of *data* is the name of a list/tuple/dict, etc? alloydog 9 1,097 Jan-30-2021, 07:11 AM
Last Post: alloydog
Question dict value, how to change type from int to list? swissjoker 3 822 Dec-09-2020, 09:50 AM
Last Post: perfringo

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020