# "'Nonetype' error is unscriptable" error on dictionary

**URL:** <https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623>\
**Category:** Ignition\
**Tags:** scripting, perspective\
**Created:** [May 20, 2024, 2:37pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623 "2024-05-20T14:37:14Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 20, 2024, 2:37pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/1 "2024-05-20T14:37:14Z")

</div>

I'm trying to assist in a map question and I've broken my code.

```python
	for car in value:
		protoMarker = recursiveCopy(self.custom.sampleMarker)
# return car['latitude']
		lat = car['latitude']

```

- The recursive copy is working. I can return the dictionary.
- `return car['latitude']` results in 42.472783.
- `lat = car['latitude']` results in an error: "'Nonetype' error is unscriptable."
- `return type(lat)` reports "class.org.phthon.core.PyFloat".

Any ideas?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [May 20, 2024, 2:49pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/2 "2024-05-20T14:49:32Z")

</div>

The successful return just means that your first entry has `latitude` but some following entry does not. Look for typos?

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 20, 2024, 3:04pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/3 "2024-05-20T15:04:39Z")

</div>

Thanks, Phil, but it's weirder than that.

![Nonetype 1](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/d/2d18edc12cd0292562eee298888a38949910efef.png)

![Nonetype 2](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/0/f0920e1a20af50cb5feec7bfadb4eec0ae06ba5e.png)

---

<div class="post-metadata">

**Author:** ![MMaynard](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mmaynard/32/3366_2.png) [@MMaynard](https://forum.inductiveautomation.com/u/MMaynard)\
**Post date:** [May 20, 2024, 3:12pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/4 "2024-05-20T15:12:01Z")

</div>

Like Phil said.  
One of your records doesn't have a valid float for latitude.  
Your first code example exits the for and the transform with the return car['latitude']  
The second one, goes through the dictionary and hits an entry without a valid latitude.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 20, 2024, 3:16pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/5 "2024-05-20T15:16:39Z")

</div>

Doh!  
Thanks!

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [May 20, 2024, 3:16pm UTC](https://forum.inductiveautomation.com/t/nonetype-error-is-unscriptable-error-on-dictionary/90623/6 "2024-05-20T15:16:39Z")

</div>

Instead returning the first latitute, use `system.perspective.print` to show all of them.
