小编Ben*_*Ben的帖子

如何在Python中的元组列表中对每个元组中的第一个值求和?

我有一个像这样的元组列表(总是对):

[(0, 1), (2, 3), (5, 7), (2, 1)]
Run Code Online (Sandbox Code Playgroud)

我想找到每对中第一项的总和,即:

0 + 2 + 5 + 2
Run Code Online (Sandbox Code Playgroud)

我怎么能用Python做到这一点?目前我正在遍历列表:

sum = 0
for pair in list_of_pairs:
   sum += pair[0]
Run Code Online (Sandbox Code Playgroud)

我觉得必须有更多的Pythonic方式.

python tuples list

27
推荐指数
4
解决办法
4万
查看次数

从具有特定索引的python列表中挑选项目

我确信在Python中有一个很好的方法可以做到这一点,但我对这门语言很新,所以请原谅我,如果这很容易!

我有一个列表,我想从该列表中挑选出某些值.我想要选择的值是列表中的索引在另一个列表中指定的值.

例如:

indexes = [2, 4, 5]
main_list = [0, 1, 9, 3, 2, 6, 1, 9, 8]
Run Code Online (Sandbox Code Playgroud)

输出将是:

[9, 2, 6]
Run Code Online (Sandbox Code Playgroud)

(即main_list中索引为2,4和5的元素).

我觉得这应该是可行的,使用像列表推导这样的东西,但我无法弄清楚(特别是,我无法弄清楚如何使用列表理解时访问项目的索引).

python list-comprehension list

27
推荐指数
1
解决办法
5万
查看次数

使用jQuery动态填写表单值

我知道如何使用纯PHP执行此操作,但我需要在不重新加载页面的情况下执行此操作.无论如何使用jQuery有效地撤回一些数据库结果(基于用户在表单上的第一个文本字段中输入的内容)然后使用从db查询中拉回的数据填充一些剩余字段?

基本上我希望看​​到用户离开文本字段(通过跳出或通过单击下一个字段)和繁荣,使用在该字段中输入的值提交查询,然后填充后续字段w/oa页面重新加载.

我熟悉jQuery的基础知识,但我还没有用它来做这样的事情,我从服务器上取回数据并尝试在客户端填充它.

任何关于如何最好地开始这个的建议/例子将非常感激.谢谢.

  • 尼古拉斯

javascript database ajax jquery dynamic

24
推荐指数
3
解决办法
10万
查看次数

如何在SQL中指定一个后找到下一条记录?

我想使用单个SQL查询(在MySQL中)来查找我指定的记录之后的记录.

即,如果表有:

id, fruit
--  -----
1   apples
2   pears
3   oranges
Run Code Online (Sandbox Code Playgroud)

我希望能够进行如下查询:

SELECT * FROM table where previous_record has id=1 order by id;
Run Code Online (Sandbox Code Playgroud)

(显然这不是真正的SQL语法,我只是使用伪SQL来说明我想要实现的目标)

将返回:

2, pears
Run Code Online (Sandbox Code Playgroud)

我目前的解决方案只是获取所有记录,并在PHP中查看它们,但这比我想要的慢.有更快的方法吗?

我会对返回两行的东西感到满意 - 即具有指定值的行和下一行.

编辑:对不起,我的问题措辞严厉.不幸的是,我对"next"的定义不是基于ID,而是基于水果名称的字母顺序.因此,我上面的例子是错误的,应该返回橙子,因为它在苹果之后按字母顺序排列.有没有办法对字符串而不是ID进行比较?

mysql

19
推荐指数
2
解决办法
6万
查看次数

如何在python中将long列表转换为逗号分隔的字符串

我是python的新手,并且有一个long列表,我想将它们连接成一个逗号分隔的字符串.

在PHP中,我会做这样的事情:

$output = implode(",", $array)
Run Code Online (Sandbox Code Playgroud)

在Python中,我不知道如何做到这一点.我尝试过使用join,但这不起作用,因为元素是错误的类型(即不是字符串).我是否需要创建列表的副本并将副本中的每个元素从long转换为字符串?或者有更简单的方法吗?

python

19
推荐指数
4
解决办法
2万
查看次数

有没有人有任何使用OpenCV与python进行描述符提取的例子?

我正在尝试使用OpenCV从图像中提取SURF描述符.我正在使用OpenCV 2.4和Python 2.7,但我很难找到任何提供有关如何使用这些功能的信息的文档.我已经能够使用以下代码来提取功能,但我找不到任何合理的方法来提取描述符:

import cv2

img = cv2.imread("im1.jpg")
img2 = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

surf = cv2.FeatureDetector_create('SURF')
detector = cv2.GridAdaptedFeatureDetector(surf, 50) # max number of features
fs = detector.detect(img2)
Run Code Online (Sandbox Code Playgroud)

我尝试提取描述符的代码是:

import cv2
img = cv2.imread("im3.jpg")
sd = cv2.FeatureDetector_create("SURF")
surf = cv2.DescriptorExtractor_create("SURF")
keypoints = []
fs = surf.compute(img, keypoints) # returns empty result
sd.detect(img) # segmentation faults
Run Code Online (Sandbox Code Playgroud)

有没有人有任何样本代码可以做这种事情,或指向任何提供样本的文档的指针?

python opencv image-processing surf

16
推荐指数
3
解决办法
2万
查看次数

链接语言

我之前问了一个问题,关于用于AI原型的语言.共识似乎是,如果我想要它快,我需要使用像Java或C++这样的语言,但Python/Perl/Ruby对接口位有好处.

所以,这引出了另一个问题.将这些语言链接在一起有多容易?哪种组合效果最好?那么,如果我想要一个调用C++或Java AI函数的Ruby CGI类型程序,那么这很容易吗?我在哪里寻找有关做这类事情的信息的指针?或者不同的组合会更好吗?

我编写Web应用程序的主要经验是从C++ CGI开始,然后转移到Java servlet(大约10年前),然后经过长时间的编程后,我做了一些PHP.但是我没有使用脚本语言编写Web应用程序的经验,然后编写了一个编译语言来获取速度关键位.所以欢迎任何建议!

c++ ruby python java perl

15
推荐指数
4
解决办法
846
查看次数

OpenCV和Numpy的互动非常糟糕

谁能解释为什么导入cv和numpy会改变python的struct.unpack的行为?这是我观察到的:

Python 2.7.3 (default, Aug  1 2012, 05:14:39) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from struct import pack, unpack
>>> unpack("f",pack("I",31))[0]
4.344025239406933e-44
Run Code Online (Sandbox Code Playgroud)

这是对的

>>> import cv
libdc1394 error: Failed to initialize libdc1394
>>> unpack("f",pack("I",31))[0]
4.344025239406933e-44
Run Code Online (Sandbox Code Playgroud)

导入cv后仍然可以

>>> import numpy
>>> unpack("f",pack("I",31))[0]
4.344025239406933e-44
Run Code Online (Sandbox Code Playgroud)

导入cv然后numpy后确定

现在我重新启动python:

Python 2.7.3 (default, Aug  1 2012, 05:14:39) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from struct import pack, unpack
>>> unpack("f",pack("I",31))[0] …
Run Code Online (Sandbox Code Playgroud)

python opencv numpy

15
推荐指数
1
解决办法
1869
查看次数

如何让我的jquery可拖动/可拖放代码更快?

我使用JQuery来使表中的元素可拖动.(在此之前我从未使用过JQuery).它工作正常,但速度慢.例如,从我点击并按住某个项目的那一刻起,到光标变化的那一刻约为2秒.这是在Firefox 3.0.6上.一旦项目被拖动,在我放开鼠标按钮和显着下降之间有一个更短但仍然明显的延迟(大约半秒,我估计).

我怀疑它是如此之慢的原因是因为桌子很大(6列和大约100行),但在我看来它并不是很大,我想知道是否有些愚蠢我正在做的那是让它变得如此缓慢.例如,我想知道每次拖动时JQuery代码是否被毫无意义地应用于表中的每个元素.不过,我不知道为什么会这样.

如果它有帮助,这是我的代码(注意我已经取出了光标调用,因为我担心它可能会减慢速度).

<script type='text/javascript'>
  $(document).ready
  (
    function()
    {
      $('.draggable_div').draggable
      (
        {
          start: function(event, ui)
          {
            $(this).css('background-color','#ddddff');
          }
        }
      );
      $('.draggable_td').droppable
      (
        {
          over: function(event, ui)
          {
            $(this).css('background-color', '#ccffcc');
          },
          out: function(event, ui)
          {
            $(this).css('background-color', null);
          },
          drop: function(event, ui)
          {
             // snip: removed code here to save space. 
          }
        }
      );
    }
  );
</script>
Run Code Online (Sandbox Code Playgroud)

HTML表是这样的(由PHP生成):

<table id='main_table' border=0>
<tr>
  <th width=14.2857142857%>0</th>
  <th width=14.2857142857%>1</th>
  <th width=14.2857142857%>2</th>
  <th width=14.2857142857%>3</th>
  <th width=14.2857142857%>4</th>
  <th width=14.2857142857%>5</th>
  <th width=14.2857142857%>6</th>
</tr>
<tr>
  <td …
Run Code Online (Sandbox Code Playgroud)

browser performance jquery

13
推荐指数
1
解决办法
8384
查看次数

如何在调用SQLite的python中按名称引用列?

我有一些代码,我一直用它来查询MySQL,我希望将它与SQLite一起使用.我真正希望这不会涉及对代码进行太多更改.不幸的是,以下代码不适用于SQLite:

cursor.execute(query)

rows = cursor.fetchall()

data = []
for row in rows
  data.append(row["column_name"])
Run Code Online (Sandbox Code Playgroud)

这会出现以下错误:

 TypeError: tuple indices must be integers
Run Code Online (Sandbox Code Playgroud)

如果我更改引用以使用列号,它可以正常工作:

  data.append(row[1])
Run Code Online (Sandbox Code Playgroud)

我能以这样的方式执行查询吗?我可以按名字引用列吗?

python sqlite

13
推荐指数
4
解决办法
2万
查看次数