Questions tagged «python»

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

3
Python库路径
在ruby中提供库路径$:,在perl中提供库路径@INC-在导入时如何获取Python搜索模块的路径列表?
73 python 

4
编写__init__函数以在Django模型中使用
我正在尝试为__init__我的一个模型编写函数,以便可以通过执行以下操作创建对象: p = User('name','email') 当我编写模型时,我有: def __init__(self, name, email, house_id, password): models.Model.__init__(self) self.name = name self.email = email 这样可以正常工作,我可以将对象保存到数据库中,但是当我这样做时User.objects.all(),除非我拿出__init__函数,否则它不会拉任何东西。有任何想法吗?

2
重试芹菜任务并以指数方式退回
对于这样的任务: from celery.decorators import task @task() def add(x, y): if not x or not y: raise Exception("test error") return self.wait_until_server_responds( 如果它引发异常,而我想从守护程序端重试,如何应用指数退避算法,即 2^2, 2^3,2^4等数秒后? 还从服务器端维护重试,以便如果该工作程序正好被杀死,那么产生的下一个工作程序将执行重试任务?

7
如何将项目添加到numpy数组
我需要完成以下任务: 从: a = array([[1,3,4],[1,2,3]...[1,2,1]]) (向每行添加一个元素)到: a = array([[1,3,4,x],[1,2,3,x]...[1,2,1,x]]) 我已经尝试做类似a [n] = array([1,3,4,x])的事情 但是numpy抱怨形状不匹配。我尝试遍历a并将元素x附加到每个项目,但是更改未反映出来。 关于如何实现此目标的任何想法?
73 python  numpy 

4
zeromq:如何防止无限等待?
我刚开始使用ZMQ。我正在设计一个工作流程为: 在5555的多个客户端之一(具有随机的PULL地址)向服务器推送请求 服务器永远在等待客户端推送。当一个请求到达时,将为该特定请求生成一个工作进程。是的,工作进程可以同时存在。 该流程完成任务后,会将结果推送给客户端。 我认为PUSH / PULL体系结构适合于此。请对此进行指正。 但是,如何处理这些情况? 服务器无法响应时,client_receiver.recv()将无限期等待。 客户端可以发送请求,但是此请求将立即失败,因此工作进程将永远停留在server_sender.send()处。 那么如何在PUSH / PULL模型中设置超时等内容? 编辑:感谢user938949的建议,我得到了一个有效的答案,我在后人中分享。
73 python  zeromq 



2
无法在python中使用StringIO的read()获取数据
使用Python2.7版本。下面是我的示例代码。 import StringIO import sys buff = StringIO.StringIO() buff.write("hello") print buff.read() 在上面的程序中,read()不返回任何内容,而getvalue()则返回“你好”。谁能帮我解决这个问题?我需要read(),因为我的以下代码涉及读取“ n”个字节。
73 python  stringio 

3
将一个函数的所有参数传递给另一个函数
我想将所有传递给function(func1)的参数作为参数传递给func2内部的另一个function(),func1 这可以*args, *kwargs在被调用过程中完成func1并将它们传递给func2,但是还有另一种方法吗? 本来 def func1(*args, **kwargs): func2(*args, **kwargs) 但是如果我的func1签名是 def func1(a=1, b=2, c=3): 我如何将它们全部发送到func2,而不使用 def func1(a=1, b=2, c=3): func2(a, b, c) 有没有一种方法像在javascript中callee.arguments?

7
在大型python项目中查找无效代码[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 7年前关闭。 改善这个问题 我已经看到了如何在Python代码中找到未使用的函数?但这确实很老,并不能真正回答我的问题。 我有一个大型python项目,其中包含多个由多个入口点脚本共享的库。这个项目已经吸引了许多作者多年,所以这里有很多无效代码。你知道该怎么做。 我知道找到所有无效代码是不确定的。我需要的是一个可以找到所有未在任何地方调用的功能的工具。我们不会根据函数名称的字符串来调用函数,因此我不会担心任何病理性... 我刚刚安装了pylint,但它似乎是基于文件的,并没有非常注意文件间的依赖关系,甚至功能的依赖关系。 显然,我可以在所有文件中对def进行grep运算,从中获取所有函数名称,并对每个函数名称进行grep运算。我只是希望已经有了一些比这还聪明的东西。 预计到达时间:请注意,我不期望或想要完美的东西。我和其他任何人一样都知道我的防止停顿问题(当我查看递归可枚举的东西时,我真的没有教过我知道的计算理论)。任何试图通过实际运行代码来近似它的事情都将花费太长时间。我只希望在语法上经过一段代码后说:“肯定使用了此功能。可以使用此功能,而绝对不使用此功能,甚至没有人知道它的存在!” 而且前两个类别并不重要。

2
SQLAlchemy可以执行的示例,而Django ORM不能执行的示例
我最近在将Pyramid与SQLAlchemy结合使用以及在Django中保留当前应用程序方面进行了大量研究。那本身就是一个完整的辩论,但是我不是在这里讨论。 我想知道的是,为什么普遍认为SQLAlchemy比Django ORM好?我发现两者之间的几乎每一个比较(如果不是每个比较)都有利于SQLAlchemy。我认为性能是很大的,因为SQLAlchemy的结构使它可以更平滑地转换为SQL。 但是,我也听说过,通过更艰巨的任务,几乎不可能使用Django ORM。我想确定一个问题有多大。我一直在阅读切换到SQLAlchemy的原因之一是Django ORM不再适合您的需求。 简而言之,有人可以提供SQLAlchemy可以执行的查询(不一定是实际的SQL语法),但是Django ORM如果不添加其他原始SQL便无法做到? 更新: 自从我第一次问起这个问题以来,我就一直注意到这个问题,所以我想多花2美分。 最后,我们最终使用了SQLAlchemy,我必须对这个决定感到满意。 我正在重新讨论这个问题,以提供SQLAlchemy的其他功能,到目前为止,我还无法在Django ORM中进行复制。如果有人可以提供有关此操作的示例,那么我很乐意吃我的话。 假设您要使用一些postgresql函数,例如sameity(),该函数提供了模糊的比较(请参阅:使用PostgreSQL快速查找相似的字符串-tl; dr输入两个字符串会返回相似性百分比)。 我已经在使用Django ORM的方法上进行了一些搜索,发现除了使用原始sql之外,什么都没有发现,这从他们的文档中可以明显看出:https : //docs.djangoproject.com/en/dev/topics/db / sql /。 即 Model.objects.raw('SELECT * FROM app_model ORDER BY \ similarity(name, %s) DESC;', [input_name]) 但是,SQLalchemy具有func(),如下所述:http ://docs.sqlalchemy.org/en/latest/core/sqlelement.html#sqlalchemy.sql.expression.func from sqlalchemy import desc, func session.query(Model).order_by(func.similarity(Model.name, input_name)) 这使您可以为任何已定义的sql / postgresql / etc函数生成sql,而无需使用原始sql。

9
未检测到在多处理池中引发的异常
看来,当从multiprocessing.Pool进程引发异常时,没有堆栈跟踪或任何其他指示其已失败的迹象。例: from multiprocessing import Pool def go(): print(1) raise Exception() print(2) p = Pool() p.apply_async(go) p.close() p.join() 打印1并静默停止。有趣的是,引发BaseException可以工作。有什么办法可以使所有异常的行为与BaseException相同?

5
flask-login:无法理解其工作原理
我正在尝试了解其Flask-Login工作原理。 我在他们的文档中看到他们使用了预先填充的用户列表。我想玩一个数据库存储的用户列表。 但是,我不了解本Flask-Login模块中的某些内容。 @login_manager.user_loader def load_user(userid): #print 'this is executed',userid return user(userid, 'asdf') 每次请求都会调用此代码吗?这是用来加载我的用户对象的所有详细信息吗? 现在,我有以下代码: @app.route('/make-login') def make_login(): username = 'asdf' password = 'asdf' user_data = authenticate(username, password) user_obj = user(user_data[0], user_data[1]) login_user(user_obj) return render_template('make-login.html') 当我访问/ make-login时,我想登录。 我的用户类别: class user(object): def __init__(self, id, username, active=True): self.username = username self.id = …

21
如何在Anaconda Python(Windows平台)中安装xgboost?
我是Python新用户。我从下面的链接下载了最新的Anaconda 3 2.4.1(Python 3.5):https : //www.continuum.io/downloads 我的电脑配置为:Windows 10、64位,4GB RAM 在Anaconda命令提示符中'pip install xgboost'失败后,我花了数小时试图找到正确的下载软件包的方法,但是找不到有关Anaconda的任何特定说明。 谁能帮忙从Anaconda安装xgboost?

5
如何将列表中的每个项目与其余项目进行一次比较?
假设我有一个数组/要比较的事物列表。在我更熟悉的语言中,我会做类似的事情 for (int i = 0, i < mylist.size(); i++) for (int j = i + 1, j < mylist.size(); j++) compare(mylist[i], mylist[j]) 这样可以确保我们只比较每对一次。在某些情况下,我正在对列表中包含的一堆对象进行碰撞检测。对于检测到的每个碰撞,将一个描述碰撞的小的“碰撞”对象添加到列表中,然后另一个例程循环循环以解决每个碰撞(取决于两个碰撞对象的性质)。显然,我只想报告每个碰撞一次。 现在,这样做的pythonic方式是什么,因为Python倾向于使用迭代器而不是遍历索引? 我有以下(越野车)代码: for this in mylist: for that in mylist: compare(this, that) 但这显然会使每次碰撞发生两次,从而在尝试解决它们时导致一些奇怪的行为。那么这里的pythonic解决方案是什么?
73 python 

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.