相关疑难解决方法(0)

python中'和'(布尔)与'&'(按位)之间的区别.为什么列表与numpy数组的行为存在差异?

是什么解释了列表与numpy.arrays上布尔运算和按位运算的行为差异?

我对在python中正确使用' &'vs' and' 感到困惑,如下面的简单示例所示.

mylist1 = [True,  True,  True, False,  True]
mylist2 = [False, True, False,  True, False]

>>> len(mylist1) == len(mylist2)
True

# ---- Example 1 ----
>>> mylist1 and mylist2
[False, True, False, True, False]
# I would have expected [False, True, False, False, False]

# ---- Example 2 ----
>>> mylist1 & mylist2
TypeError: unsupported operand type(s) for &: 'list' and 'list'
# Why not just like example 1?

>>> import numpy as np …
Run Code Online (Sandbox Code Playgroud)

python bit-manipulation numpy boolean-expression ampersand

124
推荐指数
5
解决办法
8万
查看次数

如何获取文件的权限掩码?

如何使用python在*nix上获取文件的权限掩码,如644或755?这样做有什么功能或类吗?你能帮助我吗?非常感谢你!

python file-permissions user-permissions

55
推荐指数
4
解决办法
5万
查看次数

复制文件,保留权限和所有者

shutil的文档告诉我:

即使是更高级别的文件复制功能(shutil.copy(),shutil.copy2())也无法复制所有文件元数据.在POSIX平台上,这意味着文件所有者和组以及ACL都会丢失

如果我需要在python中复制文件,如何保留文件所有者和组?

该进程以root身份在linux上运行.

更新:我们不使用ACL.我们只需要保留使用tar和rsync等工具保存的东西.

python file-permissions

13
推荐指数
3
解决办法
1万
查看次数

Python - 测试目录权限

在Windows上的Python中,有没有办法确定用户是否有权访问目录?我已经看过了,os.access但它给出了错误的结果.

>>> os.access('C:\haveaccess', os.R_OK)
False
>>> os.access(r'C:\haveaccess', os.R_OK)
True
>>> os.access('C:\donthaveaccess', os.R_OK)
False
>>> os.access(r'C:\donthaveaccess', os.R_OK)
True
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?有没有更好的方法来检查用户是否有权访问目录?

python windows directory permissions

8
推荐指数
2
解决办法
2万
查看次数

如何在Python中获取默认文件权限?

我正在编写一个Python脚本,在其中我将输出写入临时文件,然后在完成并关闭后将该文件移动到其最终目标.当脚本完成时,我希望输出文件具有与正常创建时相同的权限open(filename,"w").实际上,该文件将具有tempfile模块用于临时文件的限制性权限集.

有没有办法让我弄清楚如果我在适当的位置创建输出文件的"默认"文件权限,那么我可以在移动之前将它们应用到临时文件中?

python file-permissions temporary-files

7
推荐指数
2
解决办法
2922
查看次数

Python:检查文件已锁定

我的目标是知道文件是否被其他进程锁定,即使我无权访问该文件!

所以更清楚一点,假设我使用python的内置open()和'wb'开关(用于写入)打开文件.open()将抛出IOError与errno 13(EACCES)if

  1. 用户没有该文件的权限或
  2. 该文件被另一个进程锁定

我怎样才能在这里检测到案例(2)?

我的目标平台是Windows!

python file-io

6
推荐指数
2
解决办法
2万
查看次数

QFileInfo vs QFile测试文件是否可写

我正在使用PyQt,在Windows上测试我的应用程序时注意到了奇怪的行为(Linux一切正常。)

我有一个可以读写的文件,我想从该应用程序对其进行测试:

>>> from PyQt4.QtCore import QFile, QFileInfo

>>> f1 = QFileInfo("C:\Users\Maxime\Desktop\script.py")
>>> f2 = QFile("C:\Users\Maxime\Desktop\script.py")

>>> f1.isWritable()
True
>>> f2.isWritable()
False
Run Code Online (Sandbox Code Playgroud)

因此,QFile在该测试用例上看来是错误的。但是,在另一个只读文件上:

>>> f1 = QFileInfo("C:\Program Files (x86)\MySoftware\stuff\script.py")
>>> f2 = QFile("C:\Program Files (x86)\MySoftware\stuff\script.py")

>>> f1.isWritable()
True
>>> f2.isWritable()
False
Run Code Online (Sandbox Code Playgroud)

现在,这QFileInfo是错误的!

所以我决定也许我应该os.access改用:

>>> import os

>>> os.access("C:\Users\Maxime\Desktop\script.py")
True
>>> os.access("C:\Program Files (x86)\MySoftware\stuff\script.py")
True
Run Code Online (Sandbox Code Playgroud)

因此os.access在一种情况下也是错误的,并且返回与相同的结果QFileInfo

我有多个问题:

  • 我对Windows不熟悉,是否缺少某些内容?
  • 使用Qt,我可以使用QFileInfoQFile测试是否可以写入文件。我应该使用一个而不是另一个吗?
  • 如果这只是Qt(和Python ??)中的错误,我希望有一种解决方法也可以在Linux和Mac OS上使用。

编辑:

弗兰克(Frank)的一个非常有趣的评论解释说,由于我尚未打开文件,因此QFile :: isWritable()将始终返回False。

>>> …
Run Code Online (Sandbox Code Playgroud)

python qt file-permissions pyqt

5
推荐指数
1
解决办法
3984
查看次数

检查python中文件的权限

我正在尝试检查给定指定路径的文件的可读性.这就是我所拥有的:

def read_permissions(filepath):
    '''Checks the read permissions of the specified file'''
    try:
        os.access(filepath, os.R_OK) # Find the permissions using os.access
    except IOError:
        return False

    return True
Run Code Online (Sandbox Code Playgroud)

这可以在运行时作为输出返回True或False.但是,我希望错误消息来自errno它.这就是我认为我必须做的事情(但我知道有些不对劲):

def read_permissions(filepath):
    '''Checks the read permissions of the specified file'''
    try:
        os.access(filepath, os.R_OK) # Find the permissions using os.access
    except IOError as e:
        print(os.strerror(e)) # Print the error message from errno as a string

    print("File exists.")
Run Code Online (Sandbox Code Playgroud)

但是,如果我输入一个不存在的文件,它会告诉我该文件存在.有人可以帮助我解决我做错了什么(以及我将来可以做些什么来远离这个问题)?我还没有看到有人试过这个os.access.我也打开其他选项来测试文件的权限.有人可以帮助我在出现问题时如何提出相应的错误消息吗?

此外,这可能适用于我的其他功能(它们os.access在检查其他内容时仍然使用,例如使用文件的存在和使用的文件os.F_OK的写权限os.W_OK).这是我试图模拟的那种事情的一个例子:

>>> read_permissions("located-in-restricted-directory.txt") # Because of …
Run Code Online (Sandbox Code Playgroud)

python error-handling file-permissions python-2.7

4
推荐指数
1
解决办法
1万
查看次数