'c:/windows'
-.. method:: PurePath.as_uri()
-
- Represent the path as a ``file`` URI. :exc:`ValueError` is raised if
- the path isn't absolute.
-
- >>> p = PurePosixPath('/etc/passwd')
- >>> p.as_uri()
- 'file:///etc/passwd'
- >>> p = PureWindowsPath('c:/Windows')
- >>> p.as_uri()
- 'file:///c:/Windows'
-
-
.. method:: PurePath.is_absolute()
Return whether the path is absolute or not. A path is considered absolute
UnsupportedOperation: cannot instantiate 'WindowsPath' on your system
+File URIs
+^^^^^^^^^
+
+Concrete path objects can be created from, and represented as, 'file' URIs
+conforming to :rfc:`8089`.
+
+.. note::
+
+ File URIs are not portable across machines with different
+ :ref:`filesystem encodings <filesystem-encoding>`.
+
+.. classmethod:: Path.from_uri(uri)
+
+ Return a new path object from parsing a 'file' URI. For example::
+
+ >>> p = Path.from_uri('file:///etc/hosts')
+ PosixPath('/etc/hosts')
+
+ On Windows, DOS device and UNC paths may be parsed from URIs::
+
+ >>> p = Path.from_uri('file:///c:/windows')
+ WindowsPath('c:/windows')
+ >>> p = Path.from_uri('file://server/share')
+ WindowsPath('//server/share')
+
+ Several variant forms are supported::
+
+ >>> p = Path.from_uri('file:////server/share')
+ WindowsPath('//server/share')
+ >>> p = Path.from_uri('file://///server/share')
+ WindowsPath('//server/share')
+ >>> p = Path.from_uri('file:c:/windows')
+ WindowsPath('c:/windows')
+ >>> p = Path.from_uri('file:/c|/windows')
+ WindowsPath('c:/windows')
+
+ :exc:`ValueError` is raised if the URI does not start with ``file:``, or
+ the parsed path isn't absolute.
+
+ .. versionadded:: 3.13
+
+
+.. method:: Path.as_uri()
+
+ Represent the path as a 'file' URI. :exc:`ValueError` is raised if
+ the path isn't absolute.
+
+ .. code-block:: pycon
+
+ >>> p = PosixPath('/etc/passwd')
+ >>> p.as_uri()
+ 'file:///etc/passwd'
+ >>> p = WindowsPath('c:/Windows')
+ >>> p.as_uri()
+ 'file:///c:/Windows'
+
+ For historical reasons, this method is also available from
+ :class:`PurePath` objects. However, its use of :func:`os.fsencode` makes
+ it strictly impure.
+
+
Methods
^^^^^^^
.. versionadded:: 3.5
-.. classmethod:: Path.from_uri(uri)
-
- Return a new path object from parsing a 'file' URI conforming to
- :rfc:`8089`. For example::
-
- >>> p = Path.from_uri('file:///etc/hosts')
- PosixPath('/etc/hosts')
-
- On Windows, DOS device and UNC paths may be parsed from URIs::
-
- >>> p = Path.from_uri('file:///c:/windows')
- WindowsPath('c:/windows')
- >>> p = Path.from_uri('file://server/share')
- WindowsPath('//server/share')
-
- Several variant forms are supported::
-
- >>> p = Path.from_uri('file:////server/share')
- WindowsPath('//server/share')
- >>> p = Path.from_uri('file://///server/share')
- WindowsPath('//server/share')
- >>> p = Path.from_uri('file:c:/windows')
- WindowsPath('c:/windows')
- >>> p = Path.from_uri('file:/c|/windows')
- WindowsPath('c:/windows')
-
- :exc:`ValueError` is raised if the URI does not start with ``file:``, or
- the parsed path isn't absolute.
-
- :func:`os.fsdecode` is used to decode percent-escaped byte sequences, and
- so file URIs are not portable across machines with different
- :ref:`filesystem encodings <filesystem-encoding>`.
-
- .. versionadded:: 3.13
-
-
.. method:: Path.stat(*, follow_symlinks=True)
Return a :class:`os.stat_result` object containing information about this path, like :func:`os.stat`.