<div dir="ltr">Interesting. I haven't looked at that package before. It looks like it would work well for that.</div><br><div class="gmail_quote"><div dir="ltr">On Sun, Nov 11, 2018 at 4:48 AM Robert Vanden Eynde <<a href="mailto:robertve92@gmail.com">robertve92@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><div class="gmail_quote"><div dir="ltr">I'm wondering how your examples would go with from funcoperators import infix (<a href="https://pypi.org/project/funcoperators/" target="_blank">https://pypi.org/project/funcoperators/</a>)</div><div dir="ltr"><br></div></div></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace">sum(1:6) # instead of sum(range(1, 6))</font></div></div></div></div></div></div></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">sum(1 /exclusive/ 6)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><font face="monospace, monospace">list(1:6)</font></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">list(1 /exclusive/ 6)</div><div dir="auto">set(1 /exclusive/ 1)</div><div dir="auto"><br></div><div dir="auto"><div dir="auto" style="font-family:sans-serif">Note that you can pick another name.</div><div dir="auto" style="font-family:sans-serif">Note that you can pick another function :</div><div dir="auto" style="font-family:sans-serif"><br></div><div dir="auto" style="font-family:sans-serif">@infix</div><div dir="auto" style="font-family:sans-serif">def inclusive (a, b):</div><div dir="auto" style="font-family:sans-serif">   return range(a, b+1)</div><div dir="auto" style="font-family:sans-serif"><br></div><div dir="auto" style="font-family:sans-serif">sum(1 /inclusive/ 6)</div><div dir="auto" style="font-family:sans-serif"><br></div></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><div><font face="monospace, monospace">for i in (1:6):</font></div></div></div></div></div></div></div></div></blockquote><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><div><font face="monospace, monospace">print(i**2)</font></div></div></div></div></div></div></div></div></blockquote></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">for i in 1 /exclusive/ 6:</div><div dir="auto">    print(i**2)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace">(i**2 for i in (1:6))</font></div></div></div></div></div></div></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">(i ** 2 for i in 1 /exclusive/ 6)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>It also makes forming reusable slices clearer and easier:</div><div><br></div></div></div></div></div></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace">my_slice = (:6:2) # instead of slice(None, 6, 2)</font></div></div></div></div></div></div></div><div><div><div><div><div><div><div><font face="monospace, monospace">my_list[my_slice]</font></div></div></div></div></div></div></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I don't have exact equivalent here, I would create a function or explicitly say slice(0, 6, 2)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>This is similar to passing a range/slice object into the respective constructor:</div></div></div></div></div></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace"><br></font></div></div></div></div></div></div></div><div><div><div><div><div><div><div><font face="monospace, monospace">[1:6] # list(1:6) or [1, 2, 3, 4, 5]</font></div></div></div></div></div></div></div><div><div><div><div><div><div><div><font face="monospace, monospace">{1:6} # set(1:6) or {1, 2, 3, 4, 5}  </font></div></div></div></div></div></div></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">As mentioned before {1:6} is a dict.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Here are a few more examples:</div></div></div></div></div></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace"><br></font></div></div></div></div></div></div></div><div><div><div><div><div><div><div><font face="monospace, monospace">for i in (:5): # 5 elements 0 to 4, i.e. range(5)</font></div></div></div></div></div></div></div></blockquote><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace">print(i**2)</font></div></div></div></div></div></div></div></blockquote></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Everybody knows i in range(5).</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div><div><div><div><div><font face="monospace, monospace"><br></font></div></div></div></div></div></div></div><div><div><div><div><div><div><div><font face="monospace, monospace"> for i in (1:): # counts up from one for as long as you want, i.e. count(1)</font></div></div></div></div></div></div></div></blockquote></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Well, count(1) is nice and people can google it.</div></div>
</blockquote></div>