New submission from diegoe email@example.com:
In the '/' operator documentation for `pathlib`, the behavior for anchored paths is not described:
The behavior (prefer the second/right-hand root/anchor) is only explained in the `PurePath` class:
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@python components: Documentation messages: 388904 nosy: diegoe, docs@python priority: normal severity: normal status: open title: pathlib: Highlight operator behavior with anchored paths versions: Python 3.9