从我已经知道,使用[], {}或()来实例化对象返回一个新的list, dict或tuple实例; 一个具有新身份的新实例对象。 这是相当清楚的,直到我真正testing它,我注意到() is ()实际上返回True而不是预期的False : >>> () is (), [] is [], {} is {} (True, False, False) 如预期的那样,这种行为在分别使用list() , dict()和tuple()创build对象时也performance出来: >>> tuple() is tuple(), list() is list(), dict() is dict() (True, False, False) 我可以在tuple()的文档中find唯一相关的信息: […]例如, tuple('abc')返回('a', 'b', 'c')和tuple([1, 2, 3])返回(1, 2, 3) 。 如果没有参数,构造函数将创build一个新的空元组() 。 我只想说,这还不足以回答我的问题。 那么,为什么空元组具有相同的身份,而其他的如列表或字典不是?
目前我正在从事python项目,需要实现一些后台作业(主要是电子邮件发送和大量数据库更新)。 我使用Redis进行任务代理。 所以在这一点上,我有两个候选人: 芹菜和RQ 。 我对这些工作队伍有一些经验,但我想请你们分享一下使用这些工具的经验。 所以。 什么优点和缺点使用芹菜与RQ。 任何适合使用芹菜与RQ的项目/任务的例子。 芹菜看起来相当复杂,但它是全function的解决scheme。 其实我不认为我需要所有这些function。 从另一方来说,RQ非常简单(例如configuration,集成),但它似乎缺less一些有用的function(例如任务撤销,代码自动重装)
我无法从jquery ajax获取数据发布。 $('#clickme').click( function() { var data = save_input(); // data data['_sid'] = $survey_id; // survey_id injected from flask data['_uip'] = $user_ip; // user_ip injected from flask, request.remote_addr $.ajax({ type : "POST", url : "{{ url_for('mod.load_ajax') }}", data: JSON.stringify(data), contentType: 'application/json;charset=UTF-8', success: function(result) { console.log(result); } }); console.log(data); }); 从代码来看, data是一个javascript对象 { 'foo' : 'foo', […]
在我的领域里,将一些数字平方,一起操作,并取结果的平方根是很常见的。 这是在毕达哥拉斯定理和RMS计算,例如。 在numpy,我做了以下几点: result = numpy.sqrt(numpy.sum(numpy.pow(some_vector, 2))) 而在纯Python中,可能会有这样的情况: result = math.sqrt(math.pow(A, 2) + math.pow(B,2)) # example with two dimensions. 然而,我一直在使用这种纯粹的Pythonforms,因为我发现它更紧凑,独立于import,看似等价: result = (A**2 + B**2)**0.5 # two dimensions result = (A**2 + B**2 + C**2 + D**2)**0.5 我曾经听到一些人认为**运算符是一种黑客攻击,并且通过以0.5来幂数来排列数字是不太可读的。 但是我想问的是如果: “有没有计算理由比第三个select前两个select?” 谢谢阅读!
build立在: http : //www.reddit.com/r/Python/comments/7v5ra/whats_your_favorite_gui_toolkit_and_why/ 优点: 1 – 易于devise/整合 – 学习曲线 2 – * nix,Windows,Mac支持/可用性,原生l&f的额外点数,支持移动或网页 3 – pythonic API 4 – 质量文件 – 我想做一些更复杂的事情,现在呢? 5 – 轻量级包装,所以没有必要包括一个完整的安装程序(py2exe,py2app将理想的工作原样,不会产生gazillion MB文件) 6 – 许可 7 – 其他人? (请注明) 竞争者: 1 – tkinter,目前支持(截至2.6,3.0) 2 – pyttk库 3 – pyGTK 4 – pyQt 5 – wxPython 6 – HTML-CGI通过基于Python的框架(Django,Turbogears,web.py,Pylons …)或粘贴 7 […]
CPython有一个奇怪的行为,在关机期间将模块设置为None。 这closures了我写的一些multithreading代码closures时的错误日志logging。 我无法find这种行为的任何文件。 在PEP 432中提到: […]显着减less将经历“模块全局设置为无”行为的模块的数量,该行为被用于审议中断周期并试图干净地释放更多的外部资源。 有关于此行为的SO问题 , C API文档提到了embedded式解释器的closures行为 。 我还在python-dev和相关的CPython bug中find了相关的线程 : 这个补丁不会改变模块对象在解除分配后立即清除其全局variables字典的行为。 这种行为在哪里logging? 是Python 2具体吗?
我想合并两个数据DataFrames ,并保留第一帧的索引作为合并数据集上的索引。 但是,当我进行合并时,生成的DataFrame具有整数索引。 我怎样才能指定我想从左边的数据框保持索引? In [4]: a = pd.DataFrame({'col1': {'a': 1, 'b': 2, 'c': 3}, 'to_merge_on': {'a': 1, 'b': 3, 'c': 4}}) In [5]: b = pd.DataFrame({'col2': {0: 1, 1: 2, 2: 3}, 'to_merge_on': {0: 1, 1: 3, 2: 5}}) In [6]: a Out[6]: col1 to_merge_on a 1 1 b 2 3 c 3 4 […]
我有一个pandasdf中的多索引列的数据集,我想按特定列中的值进行sorting。 我曾尝试使用sortindex和sortlevel,但一直没有能够得到我期待的结果。 我的数据集如下所示: Group1 Group2 ABCABC 1 1 0 3 2 5 7 2 5 6 9 1 0 0 3 7 0 2 0 3 5 我想sorting所有的数据和索引在第1组中列C按降序排列,所以我的结果如下所示: Group1 Group2 ABCABC 2 5 6 9 1 0 0 1 1 0 3 2 5 7 3 7 0 2 0 3 5 是否有可能做到这一点与我的数据所在的结构,或者我应该交换Group1的索引?
我有一个pandas数据框,看起来像这样(它是一个很大的) date exer exp ifor mat 1092 2014-03-17 American M 528.205 2014-04-19 1093 2014-03-17 American M 528.205 2014-04-19 1094 2014-03-17 American M 528.205 2014-04-19 1095 2014-03-17 American M 528.205 2014-04-19 1096 2014-03-17 American M 528.205 2014-05-17 现在我想逐行迭代,当我走过每一行, ifor在每行的值可以改变,取决于一些条件,我需要查找另一个dataframe。 现在,我如何更新这个迭代。 试了几件事,没有一个工作。 for i, row in df.iterrows(): if <something>: row['ifor'] = x else: row['ifor'] = y df.ix[i]['ifor'] […]
所有的成员都是骆驼案件,对吧? 为什么是正确/错误而不是真/假,哪个更轻松?