草庐IT

os_stuff

全部标签

python - os.walk 很慢,有什么办法可以优化吗?

我正在使用os.walk构建数据存储的map(该map稍后在我正在构建的工具中使用)这是我目前使用的代码:deffind_children(tickstore):children=[]dir_list=os.walk(tickstore)foriindir_list:children.append(i[0])returnchildren我对此做了一些分析:dir_list=os.walk(tickstore)立即运行,如果我对dir_list不做任何操作,那么此函数会立即完成。遍历dir_list需要很长时间,即使我不append任何东西,只是遍历它也需要时间。Tickstore是一个

python - 让 os.walk 以非标准方式工作

我正在尝试按以下顺序执行以下操作:使用os.walk()向下走每个目录。每个目录都有子文件夹,但我只对第一个子文件夹感兴趣。所以目录看起来像:/home/RawData/SubFolder1/SubFolder2例如。我希望在RawData2中有停止在SubFolder1级别的文件夹。问题是,os.walk()似乎遍历了所有RawData文件夹,我不确定如何让它停止。以下是我到目前为止所拥有的-我已经尝试了一些其他的组合,用变量dirs替换根目录或文件,但这似乎并没有得到我想要的东西。importosforroot,dirs,filesinos.walk("/home/RawData"

python - 如何在 Mac OS X 上确定 python 模块搜索路径?

导入非内置模块时,解释器会在sys.path给定的位置进行搜索。sys.path从这些位置(http://docs.python.org/library/sys.html#sys.path)初始化:包含输入脚本的目录(或当前目录)Python路径依赖于安装的默认值虽然前两个来源是直截了当的,但谁能解释第三个来源的工作原理,以及影响它的可能性有哪些?虽然我会对通用解决方案感兴趣,但我的具体问题是:我已经安装了Enthoughtdistribution7.232-bit,然后Scipy-Superpack.现在enthoughtpython尝试从/Library/Python/2.7/导入

python - 如何将路径转换为 ​​Mac OS X 路径,几乎是 NFD 范式?

Mac通常在标准化路径的HFS+文件系统上运行。也就是说,例如,如果您保存一个带有重音符号é的文件(u'\xe9'),然后执行os.listdir,您将看到文件名已转换为u'e\u0301'。这是thePythonunicodedatamodule的正常unicodeNFD规范化可以处理。不幸的是,HFS+与NFD不完全一致,这意味着某些路径不会被规范化,例如福(u'\ufa1b')不会被更改,尽管它的NFD形式是u'\u798f'.那么,如何在Python中进行规范化呢?只要我可以从Python调用它们,我就可以使用nativeAPI。 最佳答案

python - 如何卸载所有python版本并使用OS X 10.10的默认系统版本?

我正在寻找一种方法来完全卸载OSX10.10上除Mac之后的默认版本之外的所有python版本。我该如何进行?目前我有一些奇怪的行为。当键入which-apython时,我得到以下输出:/Users/harisfawad/anaconda/bin/python/Library/Frameworks/Python.framework/Versions/2.7/bin/python/usr/local/bin/python/usr/bin/python为什么/System/Library/.../中的默认python版本没有显示在这里?我可以在Finder中找到该版本,因此我知道它没有被删

python - os.error 有什么意义?

为什么Python的os模块包含error,analiasforOSError?是否有理由将它拼写为os.error?OSError当然看起来与所有其他内置异常更一致。我希望os.py能说明一些问题,但它有时使用error和OSError其他。为其中一个异常起一个额外的名字似乎很愚蠢,但它在Python3.0中仍然存在。我错过了什么? 最佳答案 OSError的文档说它是在1.5.2版本中添加的。我的猜测是error早于此,并努力保持向后兼容1.5.2之前为Python编写的代码error被设为的别名操作系统错误。

python - 为什么 Time.utc 在 OS X 上的 Ruby 中的 fork 进程中变慢(而不是在 Python 中)?

我看到了问题WhydoesProcess.forkmakestuffslowerinRubyonOSX?并且能够确定Process.fork确实不会通常使任务变慢。但是,它似乎确实使Time.utc尤其慢得多。require'benchmark'defdo_stuff50000.times{Time.utc(2016)}endputs"main:#{Benchmark.measure{do_stuff}}"Process.forkdoputs"fork:#{Benchmark.measure{do_stuff}}"end下面是一些结果:main:0.1000000.0000000.10

python - Python 中 `os.chmod` 的异步版本

我在asyncio事件循环中运行了一些Python3代码。我想使用os.chmod(...)的功能,但理想情况下我会喜欢它的非阻塞版本,这样我就可以使用awaitos.chmod(...),并避免进行阻塞系统调用。我认为目前还没有任何可用的库提供此功能,至少从我所看到的来看是这样。我将如何从头开始实现非阻塞os.chmod(...)?更好的是,是否有预先存在的解决方案? 最佳答案 UNIX系统尚未为chmod系统调用实现异步API。因此,您能做的最好的事情就是在线程池中运行它:awaitloop.run_in_executor(No

python - os.mkdir 的权限分配没有按预期工作

我正在尝试创建具有777权限的目录。os.mkdir(Xmldocument.directory,0777)但是我得到的是775drwxrwxr-x.2mwysokimwysoki4096Nov911:38VeloDBBrowser我确定我拥有适当的权限,因为chmod777工作正常。 最佳答案 这里也应用了当前的umask。通常,文件是用0777(如果是可执行文件或目录)或0666(其他文件)创建的。然后操作系统将当前的umask应用到这个值,导致0755resp。0644出现在大多数文件中,因为最常用的umask是0022。您的

python - Vim 无法在 OS X 上使用 python 进行编译

我一直在尝试在ma​​cOSX10.6上编译支持python2.7的vim7.3。Vim本身编译得很好,但嵌入式python就没那么好了。我采取的步骤:hgclonehttps:/vim.googlecode.com/hg/vimcdvim/src./configure--without-x--disable-gui--disable-darwin\--enable-pythoninterp--with-features=hugemakemakeinstall这给了我一个工作的vim但没有python。auto/config.log表示存在文件错误:configure:5387:che