问题标签 [pathlib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
554 浏览

python - Pathlib - 加入 n 个父母

我正在玩 Pathlib 并试图找出是否有一种简单的方法来执行以下操作 - 我有一组路径,我想从中提取前 4 个父母,并将这 4 个加入到一个路径中。

或者(如果可能的话)我想加入所有父母,直到父母通过了给定的父母,例如,c://d1//d2//known//d4//...在这里我想提取到//d4,即在“已知”父母之后的父母。

我知道我可以循环这些部分并加入第 n 个,但我想知道有没有办法做类似以下的事情p.joinpath(p.parents[0:4])p.joinpath(p.parents[0: 'known_index'+1])或者任何最pythonic的事情。

更新:

我设法通过 tuple unpacking 加入到第 n 个print(p.joinpath(*p.parts[0:5])),是否有首选方法,但我仍然没有设法实现上述替代案例的目标。

更新:

我找到了“替代”案例的选项print(p.joinpath(*p.parts[0: p.parts.index('PCB_236_237_ARM')+2]))

我现在只是在寻找最 Pythonic 的方式。

0 投票
4 回答
15180 浏览

python - 没有名为 pathlib2 的模块

我一直在努力让 Google Assistant 在我的 Raspberry Pi 3 上工作。它正在工作,但我在让这个特定步骤工作时遇到问题: https ://developers.google.com/assistant/sdk/guides/library/ python/扩展/句柄设备命令

此步骤包括向 Pi 发送开/关命令以打开或关闭 LED 灯泡。我已经确认面包板和 LED 设置正确,因为我可以通过 python 脚本打开或关闭 LED。

但是,按照该页面中的步骤并尝试运行以下命令“python hotword.py --device_model_id my-model”(实际上是:python hotword.py --device_model_id assistantraspi-1d671-pigooglev2-8n98u3)我得到以下错误: ImportError: No module named pathlib2

我包括该文件的副本 (hotword.py)

0 投票
5 回答
50926 浏览

python - 使用 pathlib 递归遍历所有子目录

如何使用pathlib递归迭代给定目录的所有子目录?

似乎只迭代给定目录的直接子级。

我知道使用os.walk()or可以做到这一点glob,但我想使用 pathlib 因为我喜欢使用路径对象。

0 投票
3 回答
6654 浏览

python-3.x - Python 3.6 pathlib 路径改名父目录

来自 Python 3.4 的pathlib 库中的新 Path 包似乎是对诸如 之类的方法的强大替代os.path.join(),但我在使用它时遇到了一些麻烦。

我有一条可以从folder_foo/file.csv到的路径long/path/to/folder_foo/file.csv。我用 pandas 读取了 .csv 文件,folder_foo对其进行了修改并希望将其保存到folder_bar/file.csvor long/path/to/folder_bar/file.csv

本质上,我想在 Path 对象中重命名folder_foo为。folder_bar

编辑:示例路径代码

尝试

1

这会导致错误TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str',这意味着您不能按照TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'中所述+将 aPosixPath与 a结合使用。str

2

为了解决这个问题,我尝试了以下方法:

然而,这会导致错误:TypeError: '_PathParents' object does not support item assignment

由于PosixPath不是列表,因此此错误是可以理解的。

3

也许.parts是更好的方法,但是

结果:TypeError: 'tuple' object does not support item assignment

问题

如何轻松重命名文件的父文件夹?

0 投票
3 回答
7352 浏览

python - 如何使用通配符获取路径名字符串并使用 pathlib 解析 glob?

如果给我一个字符串形式的路径,例如“~/pythoncode/*.py”,那么将它全局化的最佳方法是什么pathlib

使用 pathlib,有一种使用 glob 附加到路径的方法:

但是,例如,这不起作用,因为用户没有展开:

这会产生一个异常,因为我没有提供任何参数glob()

有没有办法做到这一点pathlib,或者我必须先解析字符串?

0 投票
1 回答
199 浏览

python - numpy.genfromtxt 的平台无关文件路径

我一直使用 numpy 的genfromtxt函数来工作。明天我必须做一个关于如何使用 Python 的演讲(这是我 6 周前才刚刚开始学习的东西)。问题是我的很多观众将使用 Mac 或 Linux 系统。但是,我使用 Windows。我找到了这个Path功能,但它并不完全有效:

返回:

对于 Windows,这又是我的操作系统,我需要我的文件路径的格式是

为了genfromtxt工作。

关于如何使其工作的任何建议,不仅适用于 Windows,而且适用于所有操作系统?

0 投票
2 回答
11562 浏览

python - 为什么 python pathlib Path('').exists() 返回 True?

我期望Path('')成为一个不存在的路径,因为它不对应于文件或目录名称。为什么这被认为存在?

我认为通过将 定义Path('')为与 相同可以获得优势Path('.')。在什么情况下有优势?

0 投票
2 回答
11829 浏览

python - 有没有一种惯用的方式来使用 Python 的 Pathlib 添加扩展?

我正在使用 Python 的 Pathlib,我想采取类似的方法

然后尝试几个不同的扩展。我可以

但这感觉有点尴尬。有一个更好的方法吗?

0 投票
3 回答
5495 浏览

python - Python Globbing 图像目录

我目前正在做一个项目,到目前为止,我已经生成了一个图像文件夹(png 格式),我需要在其中迭代每个图像并使用 PIL 对其进行一些操作。

通过手动将文件路径链接到脚本中,我使操作正常工作。要遍历每个图像,我尝试使用以下内容

但这会产生一个文件名列表作为字符串。

PIL 需要一个文件路径来加载图像并因此进一步使用

如何转换 glob.glob 列表中的字符串并将其用作 Image.open 方法的参数?

感谢您的反馈意见!

如果有任何相关性,我在 python 3.6.1 上。

0 投票
3 回答
665 浏览

python - Python - 将字符串附加到文件的现有行

我有一个如下的原始文件(fo.log):

以及如下所示的目标文件(fd.log):

两个文件的行数相同(可能是数百万行),但原始文件的标题行除外。考虑到内存使用情况,我不想将所有行都读入内存。

处理完我的脚本后,我希望目标文件(fd.log)如下所示:

这意味着我获取了每个原始文件行的最后信息并将其附加到相应的目标行。

从一个文件到另一个文件的行之间的对应只是行的位置,与上面的信息无关。

我能做的最接近的脚本写在下面,它正确地打印了我想要的信息。