问题标签 [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 投票
3 回答
3579 浏览

python - 如何使用win环境变量“pathlib”保存文件?

我正在尝试使用 win 环境变量%userprofile%\desktoppathlib保护不同用户 PC 中的文件。

但我无法让它工作,它一直保存在正在运行的脚本目录中。

0 投票
2 回答
76 浏览

python - 在列表理解中包含“和”命令

我不明白这个源代码在第 3 行做了什么,res = [...];我试图通过在 python 控制台中使用虚拟变量和相同的语法格式进行测试来理解,就像res = ['raj' / 'esh'];它给出错误一样;如果进行测试,res = ['raj' and 'esh'];我总是返回第二个字符串'esh',所以我很困惑为什么在该行中使用“和”。语法 p/o 也让我感到困惑。

解析的参数p是文件路径(字符串),解析的参数 f 是f = [o.name for o in os.scandir(path) if o.is_file()]; 这里语法行中的路径是文件路径。我可以在理解第 3 行方面获得任何帮助吗?

0 投票
1 回答
3947 浏览

python - How to iterate through directories in Python using Pathlib

I'm working with Python 3 and I need to perform some operations on folders, using Pathlib and checking if they are folders.

The operation I'm gonna do is something like this:

My question is if there is a better way to do this. Looking through the past asked questions, it looks like the best way to do this is using the method glob of Pahtlib. So, since I have three levels of depth, I tried this:

and it almost works. The issue is that this returns not just the deepest-level folders, but also their parents. Did I make some mistakes formatting the glob pattern? Or does it exist a better way to list just the deepest_level elements?

0 投票
0 回答
38 浏览

python - 3.5.2 和 3.6 上的 Python PATHLIB

我有两个 Python 环境并使用 PATHLIB 来构造对文件和放置的引用。

当我在下面的 3.6 上运行代码时工作正常。在 3.5 中我无法让它工作,所以我必须手动指定每条路径。我对这个世界很陌生。我是不是错过了什么。像 f'strings 这样的版本之间是否有很大的变化......我似乎没有发现很大的变化,只是在他们告诉你使用 PATHLIB2 但我在这里不需要的早期版本中。帮助!

0 投票
3 回答
1078 浏览

python-3.x - 使用配置文件、string.format() 和 pathlib 路径创建文件路径

这似乎微不足道,但我无法使用 pathlib 的 Path() 创建路径。

首先,我通过配置文件收集用户输入他们想要输出目录的位置。

然后我用文件路径创建一个实例变量:

接下来我尝试使用今天的日期创建日志文件。我尝试了以下方法:

如果有人进入:

在他们的配置文件中,无论我尝试什么,pathlib 都会在其周围加上引号,如下所示:

我也尝试过先这样做,看看是否有帮助。它没。

0 投票
1 回答
8871 浏览

python - Python3 的 pathlib 可以在 Linux 和 Windows 系统之间移植使用吗?

我正在用 Python3 编写一些软件,旨在备份 Windows 客户端上的目录结构,并将其发送到 Linux 服务器。

我遇到的问题是如何处理 Windows 和 Linux 文件路径。我需要 Windows 客户端创建一个表示源文件相对路径的对象,将该相对路径发送到服务器,以便服务器知道将文件写入目标文件夹中的哪个子目录,然后发送实际数据。

发送实际数据不是问题,但是如何将 Windows 相对路径发送到 Linux 系统?我尝试将其作为字符串使用os.path,但很快就变得一团糟。我正在考虑使用pathlib.

如果我可以创建某种路径对象,我可以使用 pickle 对其进行序列化,并将其发送到服务器。我会使用 pathlib 中的什么对象来表示路径?

Path()似乎创建了一个适用于当前文件系统(PosixPathWindowsPath)的类的实例,这些文件系统不可移植。如果我WindowsPath在 Windows 客户端上创建一个对象,Linux 将无法反序列化它,因为您甚至无法WindowsPath在 Linux 系统上实例化一个对象。

看起来我可以使用一个PureWindowsPath对象,并将其发送到 Linux,但是如何将PureWindowsPath对象(表示相对路径)转换为 aPosixPath或至少 a PurePosixPath

那可能吗?还是我认为这一切都错了?

0 投票
3 回答
1386 浏览

python - 为什么我没有进入路径文件“系统找不到指定的路径”

所以我在 python 中使用了一个函数,该函数在 Robotframework 中被调用来将文件从源复制到目标我使用 os.path.join() 和 os.listdir() 和 os.path.normpath() 来获取访问权限到文件夹并使用shutil复制但每次我收到此错误

我的代码

0 投票
0 回答
1862 浏览

python - pyinstaller exe 识别相对路径但不是绝对路径

我正在使用 pyinstaller 从脚本创建 EXE。script和exe的位置如下:

脚本:root-dir\subdir1\subdir2\src\scriptabc.py

exe:根目录\subdir1\subdir2\exe\scriptabc.exe

要创建 Exe,我从 Exe 目录运行 cmd 命令。

生成的文件在 Exe 文件夹中正确创建,可执行文件在 dist 文件夹中。然后我将可执行文件复制到 Exe 文件夹中,使其与 src\scriptabc.py 文件的深度级别相同,并引用根目录。

当我运行 exe 时,我使用相对路径的所有代码项,例如

运行得很好。

但是,当代码使用 pathlib 进行绝对路径评估时,它会失败并出现以下错误:

我正在使用 pathlib 建立根目录的绝对路径,如下所示:

一旦我建立了根路径,就会有很多代码为其他子目录创建路径。

所以这个索引号在使用 src*.py 文件夹时可以正常工作 为什么它会给位于 exe*.exe 文件夹中的 exe 错误?

文件选项是否只查看脚本文件名?因为如果是深度的话,exe和src文件夹的深度是完全一样的。

如果我将粘贴复制到 src 文件夹并从那里运行,exe 就可以正常工作。在我的 exe 发行版中,我根本不想拥有 src 文件夹,如果可能的话,让代码从 exe 文件夹运行。

有人可以帮忙吗?

问题的第二部分是我正在寻找包含所有 dll 文件的规范脚本(我希望它们捆绑在 exe 中,而不是在每台计算机上安装 redist 包。我的计算机中有 SDK 和所有必需的 dll 文件)。我需要问另一个问题吗?

0 投票
2 回答
214 浏览

python - 删除 python 路径硬编码和传递列表

**更新 2019 年 1 月 8 日 0945 EST

我已通过 bhakta0007 提供的函数传递脚本,但收到路径错误“系统找不到指定的路径:”。

经过审查,我在脚本末尾添加了以下语句,以通过函数传递列表并且代码有效。

对于 fList 中的 f:excel_csv(fList)

我已经为下面的问题添加了答案。

我有一个小脚本,我运行它来将 excel 文件转换为 .csv。目前,我必须使用硬编码的路径重复脚本。当前路径具有完全相同的结构,但我想创建一个可以从中调用的列表的 3 位标识符除外。下面是我的代码。您会看到我有具有路径的变量,并且我在需要的地方传递了这些变量。我已经研究了 os.path、glob 和 pathlib,但我找不到解决问题的好方法。

原始代码

0 投票
2 回答
33632 浏览

python - 使用 pathlib 重命名文件扩展名(python 3)

我正在使用 Windows 10 和 winpython。我有一个扩展名为 .dwt 的文件(它是一个文本文件)。我想将此文件的扩展名更改为 .txt。

我的代码不会引发任何错误,但不会更改扩展名。

在 winpython 的 ipython 窗口输出中打印出预期的结果(如下所示):

E:\seaborn_plot\x.dwt

E:\seaborn_plot\x.txt

但是当我寻找一个重命名的扩展名的文件时,扩展名并没有改变,只有原始文件存在。我怀疑windows文件权限。