# Python 'in' operator

**URL:** <https://mworks.discourse.group/t/python-in-operator/859>\
**Category:** Support\
**Created:** [December 6, 2022, 6:40pm UTC](https://mworks.discourse.group/t/python-in-operator/859 "2022-12-06T18:40:49Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Neel\_Agarwal](https://avatars.discourse-cdn.com/v4/letter/n/71c47a/32.png) [@Neel\_Agarwal](https://mworks.discourse.group/u/Neel_Agarwal)\
**Post date:** [December 6, 2022, 6:40pm UTC](https://mworks.discourse.group/t/python-in-operator/859/1 "2022-12-06T18:40:49Z")

</div>

Hi Chris,

I was developing a new experiment in MWorks and I was looking to use an equivalent of Python’s “in” operator to check if a value is a part of a list. I looked through the MWorks discussion board and saw that you were looking to create a similar operator in the MWorks expression grammar (titled MWorks list variables and logic from Sep ’15). I couldn’t seem to find it in the documentation and I was wondering if you could point me in the right direction.

Best,  
Neel

---

<div class="post-metadata">

**Author:** ![cstawarz](https://yyz1.discourse-cdn.com/flex031/user_avatar/mworks.discourse.group/cstawarz/32/3_2.png) [@cstawarz](https://mworks.discourse.group/u/cstawarz)\
**Post date:** [December 6, 2022, 9:43pm UTC](https://mworks.discourse.group/t/python-in-operator/859/2 "2022-12-06T21:43:44Z")

</div>

Forwarded the above email



---

<div class="post-metadata">

**Author:** ![cstawarz](https://yyz1.discourse-cdn.com/flex031/user_avatar/mworks.discourse.group/cstawarz/32/3_2.png) [@cstawarz](https://mworks.discourse.group/u/cstawarz)\
**Post date:** [December 6, 2022, 10:10pm UTC](https://mworks.discourse.group/t/python-in-operator/859/3 "2022-12-06T22:10:44Z")

</div>

Hi Neel,

Adding such an operator is still [on my to-do list](https://github.com/mworks/mworks-issues/issues/234), but I haven’t gotten to it yet. In the meantime, you can define an [expression macro](https://mworks.github.io/documentation/latest/mwel/index.html#expression) that uses the [py\_call function](https://mworks.github.io/documentation/latest/expressions/index.html#other) to do the same job:

```
%define contains (x, y) py_call('(lambda x, y: y in x)', x, y)

```

Then, in a protocol:

```auto
if (contains(my_list, 2)) {
    ...
}

```

Cheers,  
Chris

---

<div class="post-metadata">

**Author:** ![cstawarz](https://yyz1.discourse-cdn.com/flex031/user_avatar/mworks.discourse.group/cstawarz/32/3_2.png) [@cstawarz](https://mworks.discourse.group/u/cstawarz)\
**Post date:** [December 12, 2022, 3:47pm UTC](https://mworks.discourse.group/t/python-in-operator/859/4 "2022-12-12T15:47:34Z")

</div>

Made this topic public on December 12, 2022, 3:47pm UTC



---

<div class="post-metadata">

**Author:** ![cstawarz](https://yyz1.discourse-cdn.com/flex031/user_avatar/mworks.discourse.group/cstawarz/32/3_2.png) [@cstawarz](https://mworks.discourse.group/u/cstawarz)\
**Post date:** [January 24, 2023, 2:16pm UTC](https://mworks.discourse.group/t/python-in-operator/859/5 "2023-01-24T14:16:12Z")

</div>

Closed on January 24, 2023, 2:16pm UTC


