[New-bugs-announce] [issue43525] pathlib: Highlight operator behavior with anchored paths

diegoe report at bugs.python.org
Wed Mar 17 00:04:55 EDT 2021


New submission from diegoe <diegoe at gnome.org>:

In the '/' operator documentation for `pathlib`, the behavior for anchored paths is not described:

https://docs.python.org/3/library/pathlib.html#operators

The behavior (prefer the second/right-hand root/anchor) is only explained in the `PurePath` class:

https://docs.python.org/3/library/pathlib.html#pathlib.PurePath

I ran into this while helping migrate a code base that was using "naive" concatenation of strings, so this:

```
PROJECT_DIR = ROOT_DIR + "/project-name"
```

was migrated to:
```
PROJECT_DIR = ROOT_DIR / "/project-name"
```

Note that, of course, we missed the leading "/".

Although the docs _do_ describe the behavior somewhere else, I believe it's worth being redundant in the operator section.

I believe it's a reasonable mistake to warn new users against, specially since "naive" concatenation is a common "ugly" pattern that many would be migrating from. Plus, a leading "/" is easy to miss, which would only compound the confusion if you are seeing your path "omit the (left-hand) Path object" (because the anchored string took precedence).

----------
assignee: docs at python
components: Documentation
messages: 388904
nosy: diegoe, docs at python
priority: normal
severity: normal
status: open
title: pathlib: Highlight operator behavior with anchored paths
versions: Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue43525>
_______________________________________


More information about the New-bugs-announce mailing list