|  | 
| 
			 
			#1  
			
			
			
			
			
		 | |||
| 
 | |||
|  Object not subscriptable 
			
			Hello, I am defining a function with with a FOR and IF loop inside to print the position of an object. If the object is correctly placed with before the loop completes, the cooridnates will print along with a mesaage for the next action. If the object isn't place before the loops completes, a message is printed along with the correct coordinates.. The problem I having is an error that reads:  File "C:\Users\Husam\if loop test.py", line 17, in showData if box_pos[0]==3 and pos[1] == 4.0 and pos[2] == -5.0: TypeError: 'float' object is not subscriptable But, if go through and check each box_pos[0] - box_pos[2] individually the loop works. I only get the error when I codes is as follows: import viz import vizact import vizshape viz.go() box = vizshape.addBox([1,1,1],splitFaces=True,pos=(3.0,4.0,-5.0)) box_pos = box.getPosition(viz.ABS_GLOBAL) def showData(): for number in range(5): for pos in box_pos: if box_pos [0]== 3.0 and pos[1] == 4.0 and pos[2] == -5.0: print box_pos, 'The Box is connected properly move to next connection' else: print box_pos vizact.ontimer(3,showData) Please help!!! | 
| 
			 
			#2  
			
			
			
			
			
		 | |||
| 
 | |||
| 
			
			The variable pos is not a list, it's a single float value taken from the box_pos list. So you can't refer to an element within it.
		 | 
| 
			 
			#3  
			
			
			
			
			
		 | |||
| 
 | |||
| 
			
			Instead of this: Code: for pos in box_pos:
    if box_pos [0]== 3.0 and pos[1] == 4.0 and pos[2] == -5.0:
      print box_pos, 'The Box is connected properly move to next connection'Code: if box_pos[0] == 3.0 and box_pos[1] == 4.0 and box_pos[2] == -5.0: print box_pos, 'The Box is connected properly move to next connection' You may also want to compare positions approximately (i.e. "abs(box_pos[0] - 3.0) < 1e-3") to avoid any problems with rounding error. | 
|  | 
| 
 | 
 | 
|  Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
| How to render a texture of the transparent object and then blur it | whj | Vizard | 1 | 09-25-2012 03:15 PM | 
| how to hide 3D virtual object behind real object? | Darkmax | Vizard | 3 | 05-29-2012 09:39 AM | 
| retrieve Object names | Geoffrey | Vizard | 11 | 12-11-2009 04:26 AM | 
| Making an object to appear after other object done animating | jaylocco | Vizard | 2 | 07-13-2009 06:17 PM | 
| rotate to object | jargon | Vizard | 1 | 08-08-2005 12:20 PM |