小编cha*_*.ct的帖子

带有 asyncio 的 UDP 服务器

我正在尝试在 python 异步循环中接收 UDP 数据包。我对 asyncio 很陌生,所以我可能做错了什么,因为回调永远不会被调用:

import asyncio

class DiscoveryProtocol(asyncio.DatagramProtocol):
    def __init__(self):
        super().__init__()
    def connection_made(self, transport):
        self.transport = transport
    def datagram_received(self, data, addr):
        print(data)

def start_discovery():
    loop = asyncio.get_event_loop()
    t = loop.create_datagram_endpoint(DiscoveryProtocol,local_addr=('',5006))
    loop.run_until_complete(t)
    loop.run_forever()
Run Code Online (Sandbox Code Playgroud)

我可以使用普通的旧套接字接收数据包(没有异步)。

我究竟做错了什么?

python sockets networking udp python-asyncio

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

Python Eve,SQLalchemy和ForeignKey

我正在使用SQLAlcemy后端开发基于Python Eve的RESTful服务.我有两个具有一对多关系的模型:

class User(CommonColumns):

    """Model of an user in the database"""
    __tablename__ = "user"
    id = Column(Integer, primary_key=True)
    username = Column(String, unique=True)
    email = Column(EmailType, unique=True)
    folders = relationship('Folder', backref='user')

    def __unicode__(self):
        return self.username


class Folder(CommonColumns):

    """Model of an user in the database"""
    __tablename__ = "folder"
    id = Column(Integer, primary_key=True)
    name = Column(String, unique=True)
    user_id = Column(Integer, ForeignKey('user.id'), nullable=False)

    def __unicode__(self):
        return "{}/{}".format(self.user.username, self.name)
Run Code Online (Sandbox Code Playgroud)

CommonColumns就像这里一样定义

这在插入,更新和删除时非常有用users.但是,我无法插入以下内容folders:

newfolder = { …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy eve

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

numpy中数组之间的映射

给定一系列对应关系,我想在一个数组中有一些数据要映射到另一个数组:

  • originaldata 是一个numpy二维数组,
  • targetdata 是另一个numpy二维数组,
  • mapping是一个在位置之间进行映射的数组,因此mapping[x,y]给出了一对数据targetdata[x,y]来源的坐标originaldata.

到目前为止,我做了这样的事情:

for (x,y) in ALLTHEPOINTS:
    targetdata[x,y]=originaldata[mapping[x,y][0],mapping[x,y][1]]
Run Code Online (Sandbox Code Playgroud)

......我怀疑这是非常低效的.

有没有办法对此进行矢量化?或者是否有任何numpy函数来解决这种类型的操作?

python arrays mapping numpy

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

C(++)中的sprintf,逗号和点(以及本地化?)

我正在使用openframeworks开发一个项目,最近我在编写XML时遇到了一些问题.我已将问题追溯到sprintf:

似乎在某些条件下,sprintf调用可以在浮点数上写入逗号而不是点(例如"2,56"而不是"2.56").在我的语言环境中,浮动数字用','表示,以将小数与单位分开.

我无法在一个简单的示例中重现此行为,但我通过使用stringstream对值进行字符串处理来解决问题.

我很好奇sprintf使用不同的本地化的情况.当sprintf使用','而不是'.'时 以及如何控制它?

c c++ xml printf openframeworks

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