标签: reverse-lookup

Java是否有反向查找的HashMap?

我的数据是以"密钥"格式组织的,而不是"键值".它就像一个HashMap,但我需要在两个方向上进行O(1)查找.这种类型的数据结构是否有名称,Java标准库中是否包含这样的名称?(或者可能是Apache Commons?)

我可以编写自己的类,基本上使用两个镜像映射,但我宁愿不重新发明轮子(如果这已经存在但我只是没有找到合适的术语).

java hashmap map bidirectional reverse-lookup

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

在元组或对象列表上使用Python的list index()方法?

Python的列表类型有一个index()方法,它接受一个参数并返回匹配参数的列表中第一个项的索引.例如:

>>> some_list = ["apple", "pear", "banana", "grape"]
>>> some_list.index("pear")
1
>>> some_list.index("grape")
3
Run Code Online (Sandbox Code Playgroud)

是否有一种优雅(惯用)方式将其扩展到复杂对象列表,如元组?理想情况下,我希望能够做到这样的事情:

>>> tuple_list = [("pineapple", 5), ("cherry", 7), ("kumquat", 3), ("plum", 11)]
>>> some_list.getIndexOfTuple(1, 7)
1
>>> some_list.getIndexOfTuple(0, "kumquat")
2
Run Code Online (Sandbox Code Playgroud)

getIndexOfTuple()只是一个假设的方法,它接受一个子索引和一个值,然后返回该子索引上具有给定值的列表项的索引.我希望

有没有办法实现这样的一般结果,使用列表推导或lambas或类似的"内联"?我想我可以编写自己的类和方法,但如果Python已经有办法,我不想重新发明轮子.

python tuples list reverse-lookup

53
推荐指数
5
解决办法
18万
查看次数

DJANGO:如何list_display反向外键属性?

我正在构建一个Web应用程序来跟踪一个人检查的图书馆书籍.我有以下型号:

class Person(models.Model):
    name = models.CharField(max_length=100)
    def __unicode__(self):
         return self.name

class Book(models.Model):
    name = models.CharField(max_length=100)
    person = models.ForeignKey(Person)
    checkout_date = models.DateTimeField('checkout date')
    def __unicode__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

在管理员的"人员更改列表"页面上,我想展示该人拥有的书籍.这是可以做到的吗?如果是这样,怎么样?

admin.py

class BookAdmin(admin.ModelAdmin):
     list_display = ('name', 'checkout_date', 'person' )

class PersonAdmin(admin.ModelAdmin):
    list_display = ('name', 'book__name')
Run Code Online (Sandbox Code Playgroud)

python django admin foreign-keys reverse-lookup

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

使用PHP反向IP查找

在PHP中,有一个功能是对域名进行反向查找,以找出托管域名的特定共享托管服务器上托管的网站数量.或者,用PHP做到这一点的方法?

现在,我已经知道提供此服务的在线服务.但是,我想写一个脚本来自己做.我只是想不出来.

任何不建议使用第三方服务的建议都会很棒.

php dns ip-address reverse-lookup

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

在python中,如何从字典中检索密钥?

我有一个可用的标识符,用于将东西放入字典中:

class identifier():
    def __init__(self, d):
        self.my_dict = d
        self.my_frozenset = frozenset(d.items())
    def __getitem__(self, item):
        return self.my_dict[item]
    def __hash__(self):
        return hash(self.my_frozenset)
    def __eq__(self, rhs):
        return self.my_frozenset == rhs.my_frozenset
    def __ne__(self, rhs):
       return not self == rhs
Run Code Online (Sandbox Code Playgroud)

我有一个节点类型,为了哈希和相等的目的封装了标识符:

class node:
    def __init__(self, id, value):
        # id is of type identifier
        self.id = id
        self.value = value
        # define other data here...
    def __hash__(self):
        return hash(self.id)
    def __eq__(self, rhs):
        if isinstance(rhs, node):
            return self.id == rhs.id
        ### for the case when rhs …
Run Code Online (Sandbox Code Playgroud)

python performance dictionary reverse-lookup networkx

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

Python:在共享主机中反向DNS查找

有没有办法使用python进行反向查找,检查共享主机中共享相同IP地址的网站列表.

一些网站为此提供了一个工具.

python shared-hosting reverse-lookup

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

如何在django中有效地使用_set.all()?

当Entry对象的数量大于5000个条目时,django中有没有办法更有效地执行以下操作?

models.py

class Entry(models.Model):
    user = models.TextField(db_column='User', blank=True)
    date = models.DateTimeField(blank=True)

class Color(models.Model):
    color = models.TextField(blank=True)
    entry = models.ForeignKey(Entry)
Run Code Online (Sandbox Code Playgroud)

让我们说我希望获得每个条目的所有颜色......

entrys = Entry.objects.all()

for e in entrys:
    print e.color_set.all()
Run Code Online (Sandbox Code Playgroud)

我希望能够将每个对象与特定条目相关联.例如,在像这样的csv表中.

user, color
john, blue
john, orange
bob, green
bob, red
bob, purple
Run Code Online (Sandbox Code Playgroud)

查看我的所有条目需要几秒钟的时间.有没有更好的办法?

python django optimization reverse-lookup

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

如何对Django中的所有记录进行反向外键查找?

我正在尝试使用Django 1.3进行反向SQL查找.我发现了很多相关的问题,但不幸的是我只能在单个记录上找到答案,而不是一次找到多个记录.

基本上,这是我的情况:我有一个模型'技术',看起来像这样:

class Technique(models.Model):
    title = models.CharField(max_length=32)
    description = models.CharField(max_length=256)
    skill_level = models.IntegerField()
    parent_technique = models.ForeignKey('self', blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

目前我只列出了所有无主义技巧.

t = get_list_or_404(Technique.objects.filter(parent_technique=None))
Run Code Online (Sandbox Code Playgroud)

现在我想要的(或者至少我想要的)是t获得一个加法字段'childs'的所有条目,列出了将当前技术列为其父项的所有技术.谁能帮我这个?

此外,如果他们是实现我想要的另一种方式,请随时贡献它.我刚刚开始使用Django,所以我可能不知道任何其他方法.

非常感谢提前!

django django-models django-views reverse-lookup

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