4 ms·
You can do that as a one-liner (I have kept the unused “re” module import, to keep it as close to your code as possible): python -c 'import re, sys; print("\
by teddyh 3y ago
You can do that as a one-liner (I have kept the unused “re” module import, to keep it as close to your code as possible):
python -c 'import re, sys; print("\n".join(str(line.lower().count("foo")) for line in sys.stdin))'
or if you want to avoid building one large output string:
python -c 'import re, sys; print(*(line.lower().count("foo") for line in sys.stdin), sep="\n")'
if memory consumption is still an issue:
python -c 'import re, sys; set(print(line.lower().count("foo")) for line in sys.stdin)'
(This creates a useless Set object and throws it away as a side effect.)
- deleted 3y ago[deleted]