小编Nik*_* B.的帖子

在Python中将CSS选择器转换为XPath

是否有一个Python库可以解析CSS选择器并发出一个等效的XPath表达式?对于Ruby,有Nokogiri.

python xpath css-selectors

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

使用给定数量2的表达式的唯一值

给定2的个数,通过构建最多给定数量2的表达式可以形成多少个唯一值,包括加法或乘法.

例如,如果n = 2,我们可以形成2个不同的值:

2 + 2 = 4
2 * 2 = 4
2     = 2
Run Code Online (Sandbox Code Playgroud)

对于n = 3,我们可以形成4个不同的值(2,4,6和8):

2 * 2 * 2 = 8
2 * 2 + 2 = 6
2 + 2 * 2 = 6
2 + 2 + 2 = 6
2 * 2     = 4
2 + 2     = 4
2         = 2
Run Code Online (Sandbox Code Playgroud)

我想知道任何n,不同可能值的数量.

我尝试了所有可能的组合并将它们添加到哈希映射中,但随着n的增加,comibnations呈指数级增长,因此暴力无效.我需要另一种计算方法或广义数学公式.

可以使用动态编程解决,因为我看到许多子问题被重复使用.

algorithm combinations dynamic-programming

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

使用Akka Actors处理多个TCP连接

我正在尝试使用akka actor 设置一个简单的TCP服务器,这应该允许多个客户端同时连接.我将问题简化为以下简单程序:

package actorfail
import akka.actor._, akka.io._, akka.util._
import scala.collection.mutable._
import java.net._

case class Foo()

class ConnHandler(conn: ActorRef) extends Actor {
  def receive = {
    case Foo() => conn ! Tcp.Write(ByteString("foo\n"))
  }
}

class Server(conns: ArrayBuffer[ActorRef]) extends Actor {
  import context.system
  println("Listing on 127.0.0.1:9191")
  IO(Tcp) ! Tcp.Bind(self, new InetSocketAddress("127.0.0.1", 9191))
  def receive = {
    case Tcp.Connected(remote, local) =>
      val handler = context.actorOf(Props(new ConnHandler(sender)))
      sender ! Tcp.Register(handler)
      conns.append(handler)
  }
}

object Main {
  def main(args: Array[String]) {
    implicit val …
Run Code Online (Sandbox Code Playgroud)

tcp scala actor akka

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

Python 2.6优化嵌套循环

我有一个函数,它有一个字典作为输入和一个值n.字典中的每个项目都是具有一个或多个值的集合.该函数应对字典键进行排序,它应提取并返回"n"值.此功能将经常执行,因此我正在尝试优化它.有什么建议?

def select_items(temp_dict, n):
  """Select n items from the dictionary"""
  res = []
  sort_keys = sorted(temp_dict.keys())
  count = 0

  for key in sort_keys:
    for pair in temp_dict[key]:
      if count < n:
        res.append(pair)
        count += 1
      else:
        return res

  return res
Run Code Online (Sandbox Code Playgroud)

在这段代码中,我有一个count和"if语句"来控制所选值的数量.有没有办法通过在itertools或其他东西中使用某些函数来优化此代码?

python optimization

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

在Rails中使用`JSON.decode`的结果

所以我在我的控制器中有一个动作get_response来执行API:

  def memeapi
    require "net/http"
    require "uri"

    @meme = Meme.new(params[:meme])

    url = "http://version1.api.memegenerator.net/Instance_Create?username=apigen&password=SECRET&languageCode=en&generatorID=#{@meme.memeid}&imageID=#{@meme.imgid}&text0=#{@meme.text0}&text1=#{@meme.text1}"
    resp = Net::HTTP.get_response(URI.parse(url))
    data = resp.body
    # I want to convert it to the Rails data structure - a hash
    result = ActiveSupport::JSON.decode(data)


  end
Run Code Online (Sandbox Code Playgroud)

好的,但现在我想要取回信息,用它来创建另一个对象,但我甚至无法格式化我得到的信息,任何人都可以告诉我我做错了什么,我错过了什么?

我希望能够从get_response... 获取信息...谢谢.

这是JSON结构

{"success":true,"result":{"generatorID":45,"displayName":"Insanity Wolf","urlName":"Insanity-Wolf","totalVotesScore":0,"imageUrl":"/cache/images/400x/0/0/20.jpg","instanceID":13226270,"text0":"push","text1":null,"instanceImageUrl":"/cache/instances/400x/12/12916/13226270.jpg","instanceUrl":"http://memegenerator.net/instance/13226270"}}
Run Code Online (Sandbox Code Playgroud)

我不想保存所有的字段btw ...

ruby json get ruby-on-rails

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

如果(b,a)存在,则从元组的python列表中删除(a,b)

从python的元组列表(它本质上是一个列表的笛卡尔积)我想删除(a,b)if(b,a)是否在列表中.只有(a,b)或(b)之一,a)必须保留.列表

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

必须减少到

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

(虽然删除(1,2)和保留(2,1)是好的)

我试过这样做,但我不确定在迭代时从列表中删除.这不起作用.(给我[(1, 2), (2, 1), (2, 3), (3, 1), (3, 3)])

[pairs.remove((a,b)) for (a,b) in pairs if ((b,a) in pairs)]
Run Code Online (Sandbox Code Playgroud)

python list

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

什么是允许逗号分隔的数字列表的正则表达式模式?

测试:

1              PASS
123,234        PASS 
123,435,       FAIL
1,             FAIL
124,dsds,33    FAIL
121,121,1212   PASS
Run Code Online (Sandbox Code Playgroud)

所以,你可以有任意数量的数字.

此外,如果它很重要,我正在使用C#,我计划强制使用Int32中的值列表(在通过正则表达式之后).

我可以使用什么正则表达式模式?

.net c# regex

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

为什么`main`在这里被叫两次?

这是我的代码:

public class Test
{
   static 
   {
      main(null);
   }
   public static void main(String [] args)
   {
      System.out.println("done");
   }
}
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

done 
done
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下这个原因吗?

java static program-entry-point

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

确定线段是否在多边形内

假设我们有带顶点的凸多边形

(v0,v1,....vn)
Run Code Online (Sandbox Code Playgroud)

我的目的是确定对于给定点,p(x,y)连接此点和多边形的任何顶点的任何线段是否在多边形内或甚至对于给定的两点

p(x0,y0)  `p(x1,y1)`
Run Code Online (Sandbox Code Playgroud)

连接这两个点的线段是多边形内?我已经搜索了很多关于这个的网站,但我仍然感到困惑,一般来说我认为我们必须比较顶点的坐标,并通过确定哪个点的坐标小于或大于另一个点的坐标,我们可以确定任何线段的位置,但是我不确定这是多么正确,请帮助我

language-agnostic algorithm computational-geometry

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

如何将类型族命名为高阶类函数

是否可以使用类型族作为高阶"类型函数"传递给另一个类型族?一个简单的例子是以下代码:

{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE UndecidableInstances #-}
module Test where
import GHC.TypeLits as T

type family Apply (f :: Nat -> Nat -> Nat) (n :: Nat) (m :: Nat) :: Nat where
  Apply f n m = f n m

type family Plus (n :: Nat) (m :: Nat) :: Nat where
  Plus …
Run Code Online (Sandbox Code Playgroud)

haskell ghc

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