Questions tagged «python»

Python是一种多范式,动态类型的多用途编程语言。它旨在快速学习,理解和使用并强制使用干净统一的语法。请注意,Python 2自2020年1月1日起已不再受支持。不过,对于特定于版本的Python问题,请添加[python-2.7]或[python-3.x]标签。使用Python变体或库(例如Jython,PyPy,Pandas,Numpy)时,请将其包含在标签中。

3
Python十六进制
如何将十进制转换为以下格式的十六进制(至少两位,零填充,没有0x前缀)? 输入:255 输出:ff 输入:2 输出:02 我尝试过,hex(int)[2:]但似乎它显示了第一个示例,但没有显示第二个示例。
76 python  hex 

15
RuntimeError:针对API版本A编译的模块,但此版本的numpy为9
码: import numpy as np import cv 安慰: >>> runfile('/Users/isaiahnields/.spyder2/temp.py', wdir='/Users/isaiahnields/.spyder2') RuntimeError: module compiled against API version a but this version of numpy is 9 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Applications/Spyder-Py2.app/Contents/Resources/lib/python2.7/spyderlib/widgets/externalshell/sitecustomize.py", line 685, in runfile execfile(filename, namespace) File "/Applications/Spyder-Py2.app/Contents/Resources/lib/python2.7/spyderlib/widgets/externalshell/sitecustomize.py", line 78, in execfile …

2
为什么使用中间变量的代码要比不使用中间变量的代码快?
我遇到这种奇怪的行为,但无法解释。这些是基准: py -3 -m timeit "tuple(range(2000)) == tuple(range(2000))" 10000 loops, best of 3: 97.7 usec per loop py -3 -m timeit "a = tuple(range(2000)); b = tuple(range(2000)); a==b" 10000 loops, best of 3: 70.7 usec per loop 与使用变量分配进行比较,为什么比使用带有临时变量的班轮快27%以上呢? 通过Python文档,垃圾回收在timeit期间被禁用,因此并非如此。这是某种优化吗? 结果也可以在Python 2.x中重现,尽管程度较小。 运行Windows 7,CPython 3.5.1,Intel i7 3.40 GHz,64位OS和Python。似乎我尝试使用Python 3.5.0在Intel i7 3.60 …

6
什么是最快(访问)Python中类似结构的对象?
我正在优化一些代码,这些代码的主要瓶颈正在运行并访问大量类似于结构的对象。目前,我使用namedtuples来提高可读性。但是使用'timeit'进行的一些快速基准测试表明,在性能是一个重要因素的情况下,这确实是错误的方法: 以a,b,c命名的元组: >>> timeit("z = a.c", "from __main__ import a") 0.38655471766332994 使用__slots__,a,b,c的类: >>> timeit("z = b.c", "from __main__ import b") 0.14527461047146062 带有键a,b,c的字典: >>> timeit("z = c['c']", "from __main__ import c") 0.11588272541098377 使用常量键的具有三个值的元组: >>> timeit("z = d[2]", "from __main__ import d") 0.11106188992948773 使用常量键列出三个值: >>> timeit("z = e[2]", "from __main__ import e") …

8
PIP安装无法识别ffi.h,即使它可以识别libffi
我已经安装libffi了Linux服务器,并且将PKG_CONFIG_PATH环境变量正确设置为正确的目录,因为pip它已经安装了。但是,在尝试安装pyOpenSSL时,pip指出找不到文件'ffi.h'。我知道这两个ffi.h目录及其目录都存在,所以我该如何缩小ffi.h和之间的差距pip?
76 python  linux  pip 

10
最长等距子序列
我有一百万个按排序顺序排列的整数,我想找到连续对之间的差相等的最长子序列。例如 1, 4, 5, 7, 8, 12 有一个子序列 4, 8, 12 我的幼稚方法是贪婪的,只检查从每个点可以扩展子序列多远。这O(n²)似乎需要花费一点时间。 有没有更快的方法来解决这个问题? 更新。我将尽快测试答案中给出的代码(谢谢)。但是,很显然,使用n ^ 2内存将不起作用。到目前为止,还没有代码以输入结尾的代码[random.randint(0,100000) for r in xrange(200000)]。 时机。 我在32位系统上使用以下输入数据进行了测试。 a= [random.randint(0,10000) for r in xrange(20000)] a.sort() ZelluX的动态编程方法使用1.6G RAM,耗时2分14秒。使用pypy只需9秒!但是,由于大输入而导致的内存错误导致崩溃。 Armin的O(nd)时间方法使用pypy花费了9秒,但只有20MB的RAM。当然,如果范围更大的话,情况会更糟。低内存使用率意味着我还可以使用a = [xrange(200000)中r的random.randint(0,100000)进行测试],但是在我给pypy提供的几分钟内,它并没有完成。 为了能够测试Kluev的方法,我重试了 a= [random.randint(0,40000) for r in xrange(28000)] a = list(set(a)) a.sort() 大致列出长度20000。pypy的所有时间 ZelluX,9秒 克鲁夫20秒 阿明52秒 看来,如果ZelluX方法可以做成线性空间,那将是明显的赢家。
76 python  algorithm 

17
Django:“ current_tags”不是有效的标签库
我有一个从朋友那里收到的Django小项目。该代码可以在他的系统上完美运行。但是,在我的系统上,运行服务器时收到以下错误消息: /的TemplateSyntaxError 'current_tags'不是有效的标签库:找不到模板库current_tags,尝试过django.templatetags.current_tags 问题出在html文件中的一行: {% load current_tags %} 此完全相同的代码可在他的系统上正常工作,没有错误。那会是什么呢?


7
urllib2的代理
我用以下网址打开网址: site = urllib2.urlopen('http://google.com') 我想做的是用同样的方式连接到我在某处告诉我的代理: site = urllib2.urlopen('http://google.com', proxies={'http':'127.0.0.1'}) 但这也不起作用。 我知道urllib2具有类似代理处理程序的功能,但是我不记得该功能了。
76 python  proxy  urllib2 

3
如何将Matplotlib嵌入pyqt-傻瓜
我目前正在尝试将要绘制的图形嵌入我设计的pyqt4用户界面中。因为我几乎完全不熟悉编程,所以我不了解人们在我发现的示例中的嵌入方式-这个(在底部) 和那个。 如果有人可以发布逐步说明或至少一个非常小,非常简单的代码,而仅在一个pyqt4 GUI中创建例如图形和按钮,那将是很棒的。

2
Python urllib2:即使在HTTPError异常期间也正在读取内容主体吗?
我正在使用urllib2通过HTTP获取一个页面。有时,当我的请求包含错误时,资源将引发HTTP错误400(错误请求)。但是,该响应还包含提供详细错误消息的XML元素。能够看到该错误,而不仅仅是urllib2返回的HTTPError异常,将非常方便。 尽管有异常,如何返回文档内容?
76 python 


5
将变量传递给函数时如何使用python timeit?
我正在使用timeit进行此操作,并且想知道是否有人有任何提示 基本上,我有一个要测试其速度的函数(将值传递给它),并创建了这个函数: if __name__=='__main__': from timeit import Timer t = Timer(superMegaIntenseFunction(10)) print t.timeit(number=1) 但是当我运行它时,会出现奇怪的错误,例如来自timeit模块。 ValueError: stmt is neither a string nor callable 如果我自己运行该功能,则效果很好。当我将其包装在time模块中时,出现错误(我尝试使用双引号而不使用..sameoutput)。 任何建议都很棒! 谢谢!

2
TypeError:尝试以指数形式拟合数据时,只能将长度为1的数组转换为Python标量
f=np.loadtxt('Single Small Angle 1.txt',unpack=True,skiprows=2) g=np.loadtxt('Single Small Angle 5.txt',unpack=True,skiprows=2) x = f-g[:,:11944] t=range(len(x)) m=math.log10(abs(x)) np.polyfit(t,m) plt.plot(t,abs(x)) plt.show() 我只是不确定如何解决我的问题。它一直在说: m=math.log10(abs(x)) TypeError: only length-1 arrays can be converted to Python scalars

9
由于GIL,在多线程Python代码中是否不需要锁?
如果您依赖具有全局解释器锁(即CPython)的Python实现并编写多线程代码,那么您真的需要锁吗? 如果GIL不允许并行执行多个指令,那么共享数据是否有必要保护吗? 抱歉,这是一个愚蠢的问题,但这是我一直想知道的关于多处理器/核心计算机上的Python的东西。 同样的情况也适用于具有GIL的任何其他语言实现。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.