Find number of list members with "withlist"?
![](https://secure.gravatar.com/avatar/267565c6ab7816fe29beedf9a9cbcd44.jpg?s=120&d=mm&r=g)
Sorry for the simple question, but how do I get the number of list members from a particular list using "withlist"?
I'm trying to find lists with generic_nonmember_action set to 0 AND the number of list members exceeding a certain threshold.
-- Ralf Hildebrandt Charité - Universitätsmedizin Berlin Geschäftsbereich IT | Abteilung Netz | Netzwerk-Administration Invalidenstraße 120/121 | D-10115 Berlin
Tel. +49 30 450 570 155 ralf.hildebrandt@charite.de https://www.charite.de
![](https://secure.gravatar.com/avatar/267565c6ab7816fe29beedf9a9cbcd44.jpg?s=120&d=mm&r=g)
- Ralf Hildebrandt via Mailman-Users <mailman-users@python.org>:
Nevermind, already found out.
-- Ralf Hildebrandt Charité - Universitätsmedizin Berlin Geschäftsbereich IT | Abteilung Netz | Netzwerk-Administration Invalidenstraße 120/121 | D-10115 Berlin
Tel. +49 30 450 570 155 ralf.hildebrandt@charite.de https://www.charite.de
![](https://secure.gravatar.com/avatar/0fbcef57d028af495d8c9a5992405f78.jpg?s=120&d=mm&r=g)
On Tue, Jan 23, 2024 at 3:09 PM Ralf Hildebrandt via Mailman-Users < mailman-users@python.org> wrote:
We're curious.
How did you do it? :-)
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' ¯\_(ツ)_/¯ :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html]
![](https://secure.gravatar.com/avatar/267565c6ab7816fe29beedf9a9cbcd44.jpg?s=120&d=mm&r=g)
- Odhiambo Washington <odhiambo@gmail.com>:
We're curious.
How did you do it? :-)
import re
def generic_nonmember_action(mlist): if (mlist.generic_nonmember_action == 0): pattern = re.compile(r"^.*@(mydomain1|myotherdomain|yetanotherdomain)\.de$") external_addresses = 0 internal_addresses = 0 total = len(mlist.getMembers()) for member in mlist.getMembers(): if (pattern.match(member)): internal_addresses=internal_addresses+1 else: external_addresses=external_addresses+1 if external_addresses > 10: print '%s: danger - unmoderated liste and many external members: %s' % ( mlist.real_name, external_addresses)
-- Ralf Hildebrandt Charité - Universitätsmedizin Berlin Geschäftsbereich IT | Abteilung Netz | Netzwerk-Administration Invalidenstraße 120/121 | D-10115 Berlin
Tel. +49 30 450 570 155 ralf.hildebrandt@charite.de https://www.charite.de
![](https://secure.gravatar.com/avatar/0fbcef57d028af495d8c9a5992405f78.jpg?s=120&d=mm&r=g)
On Tue, Jan 23, 2024 at 4:50 PM Ralf Hildebrandt < Ralf.Hildebrandt@charite.de> wrote:
Gracias.
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' ¯\_(ツ)_/¯ :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html]
![](https://secure.gravatar.com/avatar/267565c6ab7816fe29beedf9a9cbcd44.jpg?s=120&d=mm&r=g)
- Ralf Hildebrandt via Mailman-Users <mailman-users@python.org>:
Nevermind, already found out.
-- Ralf Hildebrandt Charité - Universitätsmedizin Berlin Geschäftsbereich IT | Abteilung Netz | Netzwerk-Administration Invalidenstraße 120/121 | D-10115 Berlin
Tel. +49 30 450 570 155 ralf.hildebrandt@charite.de https://www.charite.de
![](https://secure.gravatar.com/avatar/0fbcef57d028af495d8c9a5992405f78.jpg?s=120&d=mm&r=g)
On Tue, Jan 23, 2024 at 3:09 PM Ralf Hildebrandt via Mailman-Users < mailman-users@python.org> wrote:
We're curious.
How did you do it? :-)
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' ¯\_(ツ)_/¯ :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html]
![](https://secure.gravatar.com/avatar/267565c6ab7816fe29beedf9a9cbcd44.jpg?s=120&d=mm&r=g)
- Odhiambo Washington <odhiambo@gmail.com>:
We're curious.
How did you do it? :-)
import re
def generic_nonmember_action(mlist): if (mlist.generic_nonmember_action == 0): pattern = re.compile(r"^.*@(mydomain1|myotherdomain|yetanotherdomain)\.de$") external_addresses = 0 internal_addresses = 0 total = len(mlist.getMembers()) for member in mlist.getMembers(): if (pattern.match(member)): internal_addresses=internal_addresses+1 else: external_addresses=external_addresses+1 if external_addresses > 10: print '%s: danger - unmoderated liste and many external members: %s' % ( mlist.real_name, external_addresses)
-- Ralf Hildebrandt Charité - Universitätsmedizin Berlin Geschäftsbereich IT | Abteilung Netz | Netzwerk-Administration Invalidenstraße 120/121 | D-10115 Berlin
Tel. +49 30 450 570 155 ralf.hildebrandt@charite.de https://www.charite.de
![](https://secure.gravatar.com/avatar/0fbcef57d028af495d8c9a5992405f78.jpg?s=120&d=mm&r=g)
On Tue, Jan 23, 2024 at 4:50 PM Ralf Hildebrandt < Ralf.Hildebrandt@charite.de> wrote:
Gracias.
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' ¯\_(ツ)_/¯ :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html]
participants (2)
-
Odhiambo Washington
-
Ralf Hildebrandt