On 02/10/2016 11:35 PM, Brett Cannon wrote: >> Examples:: >> >> # grouping decimal numbers by thousands >> amount = 10_000_000.0 >> >> # grouping hexadecimal addresses by words >> addr = 0xDEAD_BEEF >> >> # grouping bits into bytes in a binary literal >> flags = 0b_0011_1111_0100_1110 >> > > I assume all of these examples are possible in either the liberal or restrictive > approaches? The last one isn't for restrictive -- its first underscore isn't between digits. >> >> Implementation >> ============== >> >> A preliminary patch that implements the specification given above has been >> posted to the issue tracker. [11]_ >> > > Is the implementation made easier or harder if we went with the Group 2 or 3 > approaches? Are there any reasonable examples that the Group 1 approach allows > that Group 3 doesn't that people have used in other languages? Group 3 is probably a little more work than group 2, since you have to make sure only one consecutive underscore is present. I don't see a point to that. > I'm +1 on the idea, but which approach I prefer is going to be partially > dependent on the difficulty of implementing (else I say Group 3 to make it > easier to explain the rules). Based on the feedback so far, I have an easier rule in mind that I will base the next PEP revision on. It's basically "One ore more underscores allowed anywhere after a digit or a base specifier." This preserves my preferred non-restrictive cases (0b_1111_0000, 1.5_j) and disallows more controversial versions like "1.5e_+_2". cheers, Georg
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4