草庐IT

python比赛题目

全部标签

检索区分大小写路径的 Pythonic 方式?

我想知道是否有更快的方法来实现在python中返回区分大小写路径的函数。我想出的解决方案之一适用于linux和windows,但需要我迭代os.listdir,这可能很慢。此解决方案适用于不需要大量速度的应用程序和上下文:defcorrectPath(start,path):'Returnsaunix-typecase-sensitivepath,worksinwindowsandlinux'start=unicode(start);path=unicode(path);b='';ifpath[-1]=='/':path=path[:-1];parts=path.split('\\')

python - 如果父进程创建一些子进程,则 subprocess.communicate() 在 Windows 8 上挂起

我有一个在Win2003上运行良好的简单代码:proc=subprocess.Popen('',stdout=subprocess.PIPE,stderr=subprocess.PIPE,stdin=subprocess.PIPE)out=proc.communicate()[0]但是在Windows8上这部分;out=proc.communicate()[0],挂起。有人见过这个问题吗?我检查过进程真的终止了(当子进程启动时PID不存在)生成proc.stdout.readlines()也是一个问题,它也挂起。如何检查标准输出是否有EOF?当我停止子进程时,proc.communic

windows - 在 Windows 7 上执行 Fabric python 代码

我正在尝试使用以下代码导入fabric以用于我的python3.3版本:fab文件.pyfromfabric.apiimport*defhello():print("Helloworld!")但是在执行(C:>fabhello)时它会给出以下错误消息。fromoperatorimportisMappingTypeImportError:cannotimportnameisMappingType我有Python版本:3.3.2win32。我安装了相关包,如下面的网络链接所示:http://ridingpython.blogspot.in/2011/07/installing-fabric

Python 关闭子进程

我有一个关于在用python3编写的脚本中杀死子进程的非常简单的问题。在哪里,如果我有,my_process=Nonedefopen_storage():my_process=subprocess.Popen("waffles.exe")defkill_children():my_process.kill()调用open_storage()后,如果我调用kill_children(),我得到AttributeError:'NoneType'objecthasnoattribute'kill'但如果我有,我的进程=无my_process=subprocess.Popen("waffles

python - 为什么 'C:' 不是我认为的意思?

在Windows7上,我启动了IDLEPython2.7.5Shell:>>>importos>>>os.getcwd()'C:\\Python27'>>>os.path.relpath('C:\\')'..'>>>os.path.relpath('C:')'.'>>>os.chdir('C:')>>>os.getcwd()'C:\\Python27'这是怎么回事,为什么要这么复杂? 最佳答案 在Windows上,行为可能有点奇怪-如果您从cmd.exe启动Python或直接启动它(不通过cmd.exe),它的行为会有所不同。正如已

Esky 的 Python 项目结构

我的问题本质上是“我应该如何构建卡住的、已部署的基于Python的Windows应用程序的文件和文件夹的结构。”为了了解我的情况,这里有一些背景:我正在为我的工作场所构建一个使用Python2.7的桌面应用程序。它是基于PyQt构建的基于GUI的应用程序。我正在使用Esky构建应用程序这是一个跨平台的卡住和更新框架。Esky基本上包装/调用py2exe、py2app、bb_freeze或您已安装的适用于当前平台的任何工具。Esky创建了一个压缩包,如下所示:prog.exe-eskybootstrappingexecutableappdata/-containerforallthees

python - 如何在 windows 和 linux (apache) 上使用相同的 python cgi 文件?

在linux/apache服务器上使用python作为CGI,第一行(定义解释器,shebang)应该是这样的:#!/usr/bin/envpython在windows/apache服务器上运行相同的pythonCGI,第一行(定义解释器的行)应该是这样的:(假设python安装到c:/python27)#!c:/python27/python.exe是否有设置相同行的选项,以便在将文件从linux移动到windows时不需要更改? 最佳答案 所以你有shebang行#!/usr/bin/envpython您在Windows中缺少的

python - Linux下将pyw文件导入为模块

我从我的一位同事那里得到了一些用Python编写的适用于Windows的代码。他使用了几个模块,其中文件的扩展名为mymodule.pyw而不是mymodule.py。这简单地通过做importmymodule即使没有名为mymodule.py的文件。但是在Linux中(在我的例子中是Ubuntu13.04)这不起作用。我收到这种形式的错误消息:Traceback(mostrecentcalllast):File"main.pyw",line27,inimportcore.main_windowImportError:Nomodulenamedmain_window只需将模块文件重命名

Python 2 原始输入(): EOFError when reading a line in WINDOWS 7 command prompt

注意:关于sublimetext中的pythonraw_input()已经问过许多相同的问题。这个问题不是关于崇高的。python代码在Windows命令提示符中调用,与sublime终端不同,它支持交互式输入。我有一个python程序,它使用内置函数raw_input()获取用户输入。见下文。defpassword_score():pwd=raw_input('Enterapassword:')gname=raw_input('Enteryourfirstname:')...我在cmd中调用程序echopassword_score()|python-ia06q1.py其中a06q1.

Python:从多个子进程异步打印标准输出

我正在测试一种从Python2.7中的多个子进程打印出标准输出的方法。我设置的是一个主进程,目前生成三个子进程并吐出它们的输出。每个子进程都是一个for循环,它会随机休眠一段时间,当它醒来时,会说“SleptforXseconds”。我看到的问题是打印输出似乎是同步的。假设子进程A休眠1秒,子进程B休眠3秒,子进程C休眠10秒。主进程在尝试查看子进程C是否有内容时停止了整整10秒,即使其他两个进程可能已经休眠并打印了一些内容。这是为了模拟一个子进程是否真的比其他两个进程在更长的时间内没有输出。我需要一个适用于Windows的解决方案。我的代码如下:主进程.pyimportsysimpo