Path objects also override the / operator to join paths
This is both cool and gross... gives me C++ vibes (operator overloading abuse).
Welcome to the Python community on the programming.dev Lemmy instance!
Past
November 2023
October 2023
July 2023
August 2023
September 2023
Path objects also override the / operator to join paths
This is both cool and gross... gives me C++ vibes (operator overloading abuse).
A great joy when working with people on a combination of Windows/MacOS/Linux.
Hell, even great when your laptop is windows and desktop (or even raspberry pi) is Linux
Scapy is another library where they redefined /
to layer packets, such that you can write:
IP(dst="172.23.34.45") / UDP() / DNS(β¦)
Then Scapy has magic so that on serialisation, the UDP layer knows defaults to dport=53 if the upper layer is DNS, and it can access the lower layer to compute its checksum.
And don't forget that strings have a custom %
(as in modulo) operator for formatting:
"Hello %s" %(username)
Of course in modern Python, f-strings will almost always be more convenient