TypeError: 'Element' object is not subscriptable

0 votes

HI, It's 2 Am i am asking this question, 

i  have xml file which is very huge, i wanted to fetch particular value from the tag which i shown below. 

i wanted to fetch the   <name>1.Start Up</name> from the below xml. kindly help me with exact python code.

i was using 

from xml.dom import minidom

etree=minidom.parse('.\\BuildRelease.xml')

sheets=etree.getElementsByTagName("subsheet")

print(sheets[0].firstchild.data)

-<process xmlns="http://www.blueprism.co.uk/product/process" name="WW Process 3 (Query Regional Catalogue)" id="d15c64dd-1644-45b2-a3dd-8e584d379669">


-<process name="WW Process 3 (Query Regional Catalogue)" byrefcollection="true" narrative="Searches for items not added in the WW catalogue and adds them on Mondays and Tuesdays" bpversion="6.6.0.15260" version="1.0">

+<view>

<preconditions/>

<endpoint narrative=""/>

-<subsheet published="False" type="Normal" subsheetid="a6eff02a-a8f5-49bb-bb20-d4216b513122">

       <name>1.Start Up</name>

+<view>

</subsheet


 

Feb 18 in Python by Bharati
• 120 points
307 views

1 answer to this question.

0 votes

Hey Bharti,

You can get some idea from the below example. 

  • This mainly happens with functions return different data types according to the parameters given. The best way to avoid this is to use type() function to determine the return value’s data type and act accordingly


  1. x = fun() #function whose return data type is unknown
  2. if type(x) == int:#if the return value is an integer
  3. #do this
  4. elif type(x) == str:#if the return value is a string
  5. #do this

If the error has occurred inside the function you need to check your code to ensure it’s working properly.

More about non-subscriptable error (TypeError)

Python will throw a TypeError if you try to access a non-subscriptable in a way that you access a string or array object (or any other type of subscriptable object) .

Here a string object subscripted



  1. >>> x = 'this is subscriptable'
  2. >>> x[0]
  3. >>> 't'

Some common non-subscriptable object types are int, float, bool and None



  1. >>> y = 123 #an integer
  2. >>> y[0] # will result an error
  3. Traceback (most recent call last):
  4. File "<pyshell#29>", line 1, in <module>
  5. y[0]
  6. TypeError: 'int' object is not subscriptable
  7. >>>

This type of errors happen when you use the same variable to store different type of data types throughout your code and you eventually lost track of the data type the variable currently has.

The solution is either to check the variable carefully throughout the code or to use different variables to store values with different data types if memory usage is not an issue.

Example:



  1. >>> x = '10' #x is a string
  2. >>> print(x)
  3. 10
  4. >>> x = int(x) #x is now a int
  5. >>> print(x)
  6. 10
  7. >>> x[0] # will result an error
  8. Traceback (most recent call last):
  9. File "<pyshell#29>", line 1, in <module>
  10. y[0]
  11. TypeError: 'int' object is not subscriptable
  12. >>>
answered Feb 18 by Gitika
• 26,270 points

Related Questions In Python

0 votes
1 answer

print(instance(0).id) TypeError: 'list' object is not callable

Hey @Suraj, For me its working fine. ...READ MORE

answered Jan 18, 2019 in Python by Priyaj
• 57,530 points
471 views
0 votes
1 answer

Python TypeError: 'list' object is not callable.

The error says the list is not ...READ MORE

answered Feb 8, 2019 in Python by Omkar
• 69,000 points
7,436 views
0 votes
1 answer

i am normalizing the data set iris in python and get the error ::TypeError: 'numpy.float64' object is not callable

TRY THIS   #Nomalisation for i in names:     print(i)   ...READ MORE

answered Aug 19, 2019 in Python by Noel Deepak Palle
1,206 views
0 votes
1 answer

Python error "'Series' object is not callable "

Try this: df['ln_returns'] = np.log(df['Close_mid']/df['Close_mid']) df['Close_mid'](1)) doesn't seem to ...READ MORE

answered Jul 22, 2019 in Python by Greg
3,486 views
0 votes
1 answer

Raw_input method is not working in python3. How to use it?

raw_input is not supported anymore in python3. ...READ MORE

answered May 4, 2018 in Python by aayushi
• 750 points
481 views
0 votes
1 answer

'python' is not recognized as an internal or external command

I have met same issue when I ...READ MORE

answered Aug 24, 2018 in Python by Priyaj
• 57,530 points
189 views
0 votes
1 answer

Python `if x is not None` or `if not x is None`?

There's no performance difference, as they compile ...READ MORE

answered Sep 3, 2018 in Python by Priyaj
• 57,530 points
462 views
0 votes
1 answer

Raw_Input() Is Not Defined

For Python 3.x, use input(). For Python 2.x, ...READ MORE

answered Sep 3, 2018 in Python by Priyaj
• 57,530 points
5,905 views
0 votes
1 answer

ValueError: could not broadcast input array from shape (4,1) into shape (4)

Hey @Giorgio, You can try this hope this ...READ MORE

answered Feb 18 in Python by Gitika
• 26,270 points
200 views
0 votes
1 answer

String is immutable data type. String.replace() So why there is command for string to replace the values....??

Hey, @Nelson, replace() actually returns a *copy* of ...READ MORE

answered 3 days ago in Python by Gitika
• 26,270 points
62 views