小编Fre*_*sky的帖子

Python列表仅在等于n个前驱者时保持值

我有一个信号列表(代表连续的测量):

signals = [0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0]
Run Code Online (Sandbox Code Playgroud)

我认为信号只有在等于前面的n个测量值时才有效.

例如.如果我们只考虑2个测试验证(n=2),第一次信号从0变为1我们认为它仍然是0但是下一个测量,如果它再次为1则我们认为它仍然有效并使其成为1.然后我们需要2个测量0再次将其变为0等等...这里的信号为0和1以简化,但在我的应用中它们可以是其他整数.

期望的输出:

# For n = 2:
valid_s = [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0]

# For n = 3:
valid_s = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0]

# For n = 4:
valid_s = [0, 0, 0, …
Run Code Online (Sandbox Code Playgroud)

python

7
推荐指数
1
解决办法
626
查看次数

如果两个项目相同,则将列表内的列表移动到最后

我有以下配对值列表:

a = [['A', 'B'], ['A', 'C'], ['D', 'D'], ['C', 'D']]
Run Code Online (Sandbox Code Playgroud)

此列表可以包含一个或多个由同一项组成的卓越对:

['D', 'D']

我想将这些对移到列表的末尾以获得:

a = [['A', 'B'], ['A', 'C'], ['C', 'D'], ['D', 'D']]
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚,但我相信我并不太远:

a.append(a.pop(x) for x in range(len(a)) if a[x][0] == a[x][1])
Run Code Online (Sandbox Code Playgroud)

python list

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

在mysql中创建一段时间的ROLLING总和

我有一个列date和列表time_spent.我想为每个日期D找到一段时间内'time_spent'值的总和:(D-7-D),即.过去一周+当天.

我无法找到一种方法来做到这一点,因为我只能找到总和的例子而不是可变时间段的总和.

这是一个数据集示例:

CREATE TABLE rolling_total
(
  date date,
  time_spent int
);

INSERT INTO rolling_total VALUES ('2013-09-01','2'),
('2013-09-02','1'),
('2013-09-03','3'),
('2013-09-04','4'),
('2013-09-05','2'),
('2013-09-06','5'),
('2013-09-07','3'),
('2013-09-08','2'),
('2013-09-09','1'),
('2013-09-10','1'),
('2013-09-11','1'),
('2013-09-12','3'),
('2013-09-13','2'),
('2013-09-14','4'),
('2013-09-15','6'),
('2013-09-16','1'),
('2013-09-17','2'),
('2013-09-18','3'),
('2013-09-19','4'),
('2013-09-20','1'),
('2013-09-21','6'),
('2013-09-22','5'),
('2013-09-23','3'),
('2013-09-24','1'),
('2013-09-25','5'),
('2013-09-26','2'),
('2013-09-27','1'),
('2013-09-28','4'),
('2013-09-29','3'),
('2013-09-30','2')
Run Code Online (Sandbox Code Playgroud)

结果如下:

date       | time_spent   | rolling_week_total
2013-09-01 |           2  |         2
2013-09-02 |           1  |         3
2013-09-03 |           3  |         6
2013-09-04 |           4  |        10
2013-09-05 |           2  | …
Run Code Online (Sandbox Code Playgroud)

mysql sql sum query-optimization rolling-computation

2
推荐指数
1
解决办法
5828
查看次数

同时多个ajax请求

我有一个经过验证然后使用以下处理程序提交的表单:

submitHandler:function (form) {


    $.ajax({
        url: 'long_process.php',
        type: 'POST',
        data: $(form).serialize(),
        success: function (result) {
            // ... Redirect ...
        }
    });


    //start polling
    (function poll() {
        setTimeout(function () {
            $.ajax({
                url: "get_progress.php",
                success: function (data) {

                    console.log(data);
                    //Setup the next poll recursively
                    poll();
                },
            });
        }, 3000);
    })();


}
Run Code Online (Sandbox Code Playgroud)

long_process.php大约需要 30 秒才能完成,同时我想跟踪进度,通过get_progress.php它回显处理完成的百分比。

启动此脚本时,我进入控制台(已编辑)

1 POST long_process.php
2 GET get_process.php (3 seconds later)...
...stuck here until long_process.php finishes THEN 
3 GET get_process.php (3 seconds later)...
4 …
Run Code Online (Sandbox Code Playgroud)

php ajax progress-bar

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