Python的string.whitespace很棒: >>> string.whitespace '\t\n\x0b\x0c\r ' 如何使用这个string而不诉诸手动input'\ t | \ n | …等等正则expression式? 例如,它应该能够变成:“请\ n不要伤害\ x我的。” 成 “请不要伤害我。” 我可能想要保留单个空格,但是很简单,只要去string.whitespace [: – 1]我想。
我在写一个计算一个ISBN号的校验位的程序。 我必须读取用户的input(一个ISBN的九位数字)为一个整数variables,然后乘以最后一位数字2,最后一位数字乘以3,依此类推。 我怎样才能“分裂”整数成其组成数字来做到这一点? 由于这是一个基本的家庭作业,我不应该使用一个列表。
哪一个是用pandas处理现场传入数据的最推荐/ pythonic方式? 每隔几秒钟,我以下面的格式收到一个数据点: {'time' :'2013-01-01 00:00:00', 'stock' : 'BLAH', 'high' : 4.0, 'low' : 3.0, 'open' : 2.0, 'close' : 1.0} 我想将其附加到现有的DataFrame,然后运行一些分析。 问题是,使用DataFrame.append追加行可能会导致所有复制的性能问题。 我试过的东西: 有些人build议预先分配一个大的DataFrame,并在数据进入时更新它: In [1]: index = pd.DatetimeIndex(start='2013-01-01 00:00:00', freq='S', periods=5) In [2]: columns = ['high', 'low', 'open', 'close'] In [3]: df = pd.DataFrame(index=t, columns=columns) In [4]: df Out[4]: high low open close […]
即使远程http服务器上不存在该文件, urllib.urlretrieve将静默地返回,它只是将html页面保存到指定的文件中。 例如: urllib.urlretrieve('http://google.com/abc.jpg', 'abc.jpg') 只是悄悄地返回,即使abc.jpg在google.com服务器上不存在,生成的abc.jpg不是一个有效的jpg文件,它实际上是一个html页面。 我猜测返回的头文件(一个httplib.HTTPMessage实例)可以用来实际地告诉检索成功与否,但是我找不到httplib.HTTPMessage任何文档。 任何人都可以提供关于这个问题的一些信息?
我search了一个小时,堆栈溢出和其他地方。 唉! 请帮忙。 Vim的omnicompletion只是不起作用 。 我有Vim 7.2与Python支持编译。 filetype plugin on是在我的.vimrc 。 当.py文件打开时, :echo &omnifunc打印pythoncomplete#Complete 。 我正在处理一个大型项目,并使用exhuberant-ctags生成了一个tags文件。 这是在Vim的ctagspath中。 我可以通过在符号上键入^]来testing它,然后我将其带到符号的定义中。 更新1:我所有的项目代码都在python-in-Vim的path中。 我可以:python import myproject成功:python import myproject 。 现在,在我尝试Cx Co的地方,我所得到的是: — Omni completion (^O^N^P) Pattern not found 我究竟做错了什么? 更新2:当我在模块级inputCx Co Cn时,Vim将显示一个完成popup窗口,其中包含我项目中其他模块的几个模块级常量。 但它只是常量(符号大写字母),并且完成在其他任何地方都不起作用。 更新3:我发现文件顶部的Cx Co启动某种omnicompletion,并完成pprint. 调出pprint模块中所有内容的菜单和快速参考。 但是,我自己的模块没有import正在完成。 一年后更新4:我放弃了,学习了Emacs。 我去过黑暗的一面,阴谋和香料的神秘之地,我告诉你,我find了路。 两年后的更新5:我回到了Vim。 Emacs很漂亮,但即使经过了1.5年的Emacs,我仍然能够更快地完成Vim的工作。 现在我已经停止编写Python,并且无法testing这些build议的效果。
我试图在Windows上使用hg-git Mercurial扩展(Windows 7 64位,具体)。 我安装了Mercurial和Git。 我有Python 2.5(32位)安装。 我按照http://hg-git.github.com/上的说明安装扩展。 最初的easy_install失败了,因为无法在没有Visual Studio 2003的情况下编译dulwich。 我手动安装dulwich: git clone git://git.samba.org/jelmer/dulwich.git cd德威 c:\ Python25 \ python setup.py –pure install 现在,当我运行easy_install hg-git时,它成功了(因为dulwich依赖性得到满足)。 在我的C:\用户\用户名\ Mercurial.ini,我有: [extensions] hgext.bookmarks = hggit = 当我在命令提示符下键入'hg'时,我看到:“***未能导入扩展名hggit:没有名为hggit的模块” 看看我的c:\ Python25文件夹,我看到的唯一参考hggit是Lib\site-packages\hg_git-0.2.1-py2.5.egg 。 这应该是提取的地方,或者它应该工作吗? 由于失败了,我尝试了gg-git页面的“更多参与”指令,提示克隆git://github.com/schacon/hg-git.git并在我的Mercurialconfiguration中引用该path。 我克隆了回购,并更改我的扩展文件,如下所示: [extensions] hgext.bookmarks = hggit = c:\code\hg-git\hggit 现在当我运行hg时,我看到:***无法从c:\ code \ hg-git \ hggit中导入扩展名hggit:没有名为dulwich.errors的模块。 好的,所以这个告诉我现在find了hggit,因为我可以在hg-git \ hggit \ […]
可能重复: Java Python集成 我有一个用100%Java编写的大型现有代码库,但是我想用Python来创build一些新的代码段。 我需要做一些文本和语言处理,我宁愿使用Python和像NLTK这样的库来做到这一点。 我知道Jython项目,但它看起来像是从Python内部使用Java及其库的方式,而不是相反的方式 – 我错了吗? 如果不是,那么Java和Python之间的接口最好的方法是什么?(理想情况下)我可以调用Python中的方法并将结果返回给Java? 谢谢。
我想从Python访问我的摄像头。 我尝试使用VideoCapture扩展( 教程 ),但是对我来说这并不是很好,我不得不解决一些问题,比如320×230的分辨率有点慢,有时候没有明显的原因返回None 。 有没有更好的方式从Python访问我的摄像头?
这个消息有很多例子,但是我希望它能帮助我和其他人更好地理解Python 2.7中variables和属性查找的全部内容。 我正在使用PEP 227( http://www.python.org/dev/peps/pep-0227/ )中的代码块(如模块,类定义,函数定义等)和variables绑定(例如作为赋值,参数声明,类和函数声明,for循环等) 我使用的术语variables的名称,可以被称为没有点,名称的属性需要与对象名称限定(如obj.x为对象obj的属性x)。 在Python中有三个代码块的作用域,但是函数: 本地 全球 内build Python中只有四个块用于function(根据PEP 227): 本地 围绕function 全球 内build 将variables绑定到块中并find它的规则非常简单: 除非variables被声明为全局variables(在这种情况下variables属于全局variables),否则variables与块中某个对象的任何绑定都会使该variables局部于该块中, 对所有块使用规则LGB(local,global,builtin)查找对variables的引用,但是函数 只有函数使用规则LEGB(local,enclosing,global,builtin)来查找对variables的引用。 举个例子来validation这个规则,并且展示很多特例。 对于每个例子,我会给我的理解。 如果我错了,请纠正我。 对于最后一个例子,我不了解结果。 例1: x = "x in module" class A(): print "A: " + x #x in module x = "x in class A" print locals() class B(): print "B: " + […]
我见过如何在Python代码中find未使用的函数? 但是这真的很老,并没有真正回答我的问题。 我有一个大型的Python项目与多个入口点脚本共享多个库。 这个项目已经和很多作者一起吸引了很多年,所以有很多死代码。 你知道该怎么做。 我知道find所有的死代码是不可判定的。 我所需要的只是一个能find所有不被任何地方调用的函数的工具。 我们根本不用调用基于函数名string的函数做任何事情,所以我不担心任何病态的… 我只是安装了pylint,但它似乎是基于文件的,而不是很注意文件间依赖关系,甚至是函数依赖关系。 显然,我可以在所有的文件中使用grep来获取def,从中获得所有的函数名,并为每个函数名做一个grep。 我只是希望有一些比那里更聪明的东西。 ETA:请注意,我不期望或想要完美的东西。 我知道我的停止问题certificate和其他人一样(当我看到recursion可枚举的东西时,我没有真正教过计算理论)。 任何试图通过实际运行代码来逼近它的事情都会花费太长时间。 我只是想在语法上通过代码的东西,并说:“这个function是肯定使用的,这个function可能会被使用,而且这个function是绝对不使用,其他人甚至没有人知道它存在! 前两个类别并不重要。