精华内容
下载资源
问答
  • 如何在python字典中使用列表作为键

    千次阅读 2021-01-29 19:09:57
    我想使用如下字典:示例:{[8,16]:[[1,2,4,8],8],[16,24]:...使用setdefault,我可以在字典中创建值列表,但不能为创建列表以下是我的代码:#!/usr/bin/env python"""This Program calculates common factors betw...

    我想使用如下字典:

    示例:{[8,16]:[[1,2,4,8],8],[16,24]:[[1,2,3,4,8,12],12]}

    8和16是将要输入的两个数字,我需要构建如上所述的字典.

    使用setdefault,我可以在字典中创建值列表,但不能为键创建列表

    以下是我的代码:

    #!/usr/bin/env python

    """

    This Program calculates common factors between two Numbers , which

    is stored on a list and also greatest common factor is also computed.

    All this is stored in a dictionary

    Example: { '[n1, n2]': [[Commonfac1(n1,n2), Commonfac2(n1,n2)....Commonfacn(n1,n2)],GreatestCommonFactor] }

    """

    def Factors(number):

    result = []

    for i in range(1, number+1):

    if (number % i) == 0:

    result.append(i)

    return result

    def Common_Factors(n1, n2):

    result = []

    for element in n1:

    if element in n2:

    result.append(element)

    return result

    def greatest_common_factor(common_factors):

    count = 0

    length = len(common_factors)

    current_largest = common_factors[count]

    for i in common_factors:

    count += 1

    if count <= length -1:

    if current_largest < common_factors[count]:

    current_largest = common_factors[count]

    return current_largest

    def main():

    n1 = 8

    n2 = 16

    result1 = Factors(n1)

    result2 = Factors(n2)

    CF = Common_Factors(result1, result2)

    GCF = greatest_common_factor(CF)

    dict = {}

    dict.setdefault([n1, n2], []).append(CF)

    print dict

    if __name__ == '__main__':

    main()

    当我运行上面的程序时,我得到以下错误:

    $python math74.py

    Traceback (most recent call last):

    File "math74.py", line 58, in

    main()

    File "math74.py", line 54, in main

    dict.setdefault([n1, n2], []).append(CF)

    TypeError: unhashable type: 'list'

    关于我如何实现上述任何提示. ?

    澄清更多:

    {[8,16]:[[1,2,4,8],8],[16,24]:[[1,2,3,4,8,12],12]}

    8,16是两个数字,它们是用户输入,1,2,4,8是常见因子,8是最大公因数.

    展开全文
  • I received a list when inputting the following URL - http://api.twitter.com/1/trends/44418.jsonThe list contains multiple dictionaries, and I'm a bit confused with the list structure....

    I received a list when inputting the following URL - http://api.twitter.com/1/trends/44418.json

    The list contains multiple dictionaries, and I'm a bit confused with the list structure. I'm trying to obtain the values associated with the 'name' key.

    For example:

    "name":"#throwagrenade"

    "name":"Rebecca Black"

    "name":"#questionsihate"

    I can write the code myself, I'm just trying to conceptually understand how to access dictionaries (and their key/value pairs) within a list.

    解决方案

    The first thing I would do when working with a big lump of json, is try to get it into a more readable format. This online json formatting tool should do the job.

    Here's some code that will get all the trend names:

    import urllib2

    import json

    url = 'http://api.twitter.com/1/trends/44418.json'

    # download the json string

    json_string = urllib2.urlopen(url).read()

    # de-serialize the string so that we can work with it

    the_data = json.loads(json_string)

    # get the list of trends

    trends = the_data[0]['trends']

    # print the name of each trend

    for trend in trends:

    print trend['name']

    Or you can do it all in one line:

    names = [trend['name'] for trend in the_data[0]['trends']]

    for name in names:

    print name

    Both will result in:

    #throwagrenade

    Rebecca Black

    Eric Abidal

    #questionsihate

    #juniordoctors

    Smiley Culture

    Lily Allen

    Wes Brown

    Pandev

    Ray Wilkins

    Relevant reading:

    Python docs on json (although you should only really need json.loads())

    展开全文
  • 如果你需要多个sorting字段,比如按姓氏sorting的话,那么名字不会使用元组作为字典键是个好主意吗? 当然,这样的想法可能用途有限,但这并不意味着它是完全无用的。 当你想要显示多个组成键的元素时,你可以使用...

    经典示例:您想要将点值存储为(x,y)的元组

    salaries = {} salaries[('John', 'Smith')] = 10000.0 salaries[('John', 'Parker')] = 99999.0

    编辑1当然,你可以做salaries['John Smith'] = whatever ,但那么你将不得不做额外的工作,把钥匙分为姓和名。 那么pointColor[(x, y, z)] = "red"怎么样,这里tuple key的好处更加突出。

    我必须强调,这不是最好的做法。 在许多情况下,你最好创build特殊的类来处理这种情况,但阿列塔要求我给他(他)的例子。

    编辑0

    顺便说一下,每个元组也必须是可散列的:

    >>> d = {} >>> t = (range(3), range(10, 13)) >>> d[t] = 11 Traceback (most recent call last): File "", line 1, in TypeError: list objects are unhashable >>>

    例如,我使用元组很多时间作为dict键

    当我必须从多个值创build唯一的密钥时,我确实使用它们

    基于first_name , last_name键可能是key = '%s_%s'%(first_name, last_name)但更好的办法是key = (first_name, last_name)因为

    它更可读,更短

    展开全文
  • I have a python dictionaryd = {1: 6, 2: 1, 3: 1, 4: 9, 5: 9, 6: 1}Since the values in the above dictionary are not unique. I want to group the all the keys of unique values as a list and create a new ...

    I have a python dictionary

    d = {1: 6, 2: 1, 3: 1, 4: 9, 5: 9, 6: 1}

    Since the values in the above dictionary are not unique. I want to group the all the keys of unique values as a list and create a new dictionary as follows:

    v = {6:[1], 1:[2, 3, 6], 9: [4, 5]}

    Note the keys of new dictionary v should be sorted. I am finding it hard to visualize and implement this dictionary creation. Please suggest me an easy and efficient way to do it.

    解决方案from collections import defaultdict

    v = defaultdict(list)

    for key, value in sorted(d.iteritems()):

    v[value].append(key)

    but you can do it with a bog-standard dict too:

    v = {}

    for key, value in sorted(d.iteritems()):

    v.setdefault(value, []).append(key)

    In Python 3, use sorted(d.items()) instead.

    展开全文
  • 平时有事没事就在 Stack Overflow 上闲逛,这里有很多关于 Python 的有趣问题。...让我们定义一个使用整数、浮点数和字符串作为键字典, 从含义上看,它们都是“1”。 my_dict = { 1: 'one (integar)', '1': 'one
  • Python 字典中的“”可以是列表

    千次阅读 2021-01-13 06:13:34
    Python 字典中的“”可以是列表。答:×中国大学MOOC:\现阶段的教师职业道德原则,应该包括:\;答:\教书育人原则\"; | \"依法执教原则\"; | \"教育人道主义原则\"; | \"为人师表原则\";"《南歌子》(天上星河转)是...
  • 我想保存dataframe列的名称和lists索引的值,所以我想使用一个以lists值为和dataframe.loc[list_index]作为价值。[0,2,1,5,0,9,6,3]所以我想做一个这样的决定:0: [column1, another column]1: [column3,...].......
  • In Python 2.7, I could get dictionary keys, values, or items as a list:>>> newdict = {1:0, 2:0, 3:0}>>> newdict.keys()[1, 2, 3]Now, in Python >= 3.3, I get something like this:>...
  • python字典可以是列表

    千次阅读 2020-12-30 06:16:12
    python字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆... 当有键发生冲突(即字典键重复赋值),取最后(最近)的赋值。Python并不会因字典中的键存在冲突而产生一个错误,它...
  • 我发布了reduce()方法作为一种好奇,但是由于答案被接受,我发布了timeit结果,以便将性能与这张罚单上的其他答案进行比较。在from timeit import timeitimport functoolsdef _reduce_py2(the_list):return reduce...
  • Python支持使用字典的“作为下标来访问字典中的值。答:√匈牙利“数学之父”是( )答:费耶Windows 7中,显示桌面的快捷键是:答:Win+D中国大学MOOC: 下列属于选择隧道位置时需要考虑的社会条件因素的是?答:...
  • 在python字典中使用变量作为键

    千次阅读 2021-03-17 03:18:55
    我今天来是因为我有同样的问题。我必须说,我对这些答案很失望!我同意你的观点,这种冗余应该有一个惯用的解决方案。在这种情况下,JavaScript似乎比Python更明智。...例如,我有一个文件,它构建字典以通过Pyth...
  • 我有一本字典,上面有这样的子字典:ZZU1所以当我做EDOCX1的时候,我得到了EDOCX1...现在,我的问题是,每当子字典中的某个项目增加时,我必须创建一个空白列表,并通过以下方式将其值附加到该列表中:ZZU1起初我认...
  • 【分析题/解答题/计算题/证明题】1-1. 某工程基槽土方体积为 1300m 3 , 槽基内的基础体积为500m 3 ,基础施工完成后,用原来的土进行夯填,根据施 工组织的要求,应将多余的土方全部事先运走,试确定回填土的预留量和弃土...
  • Sorry for this basic question but my searches on this are not turning up anything other than how to get a dictionary's key based on its value which I would prefer not to use as I simply want the text/...
  • 将第一个列表的元素值作为键,将第二个列表中对应顺序的元素作为值,构建一个字典,按键升序排列后输出字典的所有键值对列表。 输入格式: 输入两行字符串,分别以空格为分隔存为列表。 输出格式: 按键的升序,输出...
  • 我有一本字典,它有:d ={10L: {u'Owner Name': u'abc', u'Email': u'wa@gmail.com', u'Manager Name': u'jhon'}, 12L: {u'Owner Name': u'awdaw', u'Email': u'raghavpatnecha15@gmail.com', u'Manager Name': u'...
  • python字典中的是什么

    千次阅读 2021-02-03 21:54:22
    字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆可... 当有键发生冲突(即字典键重复赋值),取最后(最近)的赋值。Python并不会因字典中的键存在冲突而产生一个错误,它不会...
  • 我试图在python字典中使用一个对象作为键,但是它的行为方式让我无法完全理解。首先,我创建一个以对象为字典:package_disseminators = {ContentType("application", "zip", "http://other/property") : "one",...
  • 我不得不将两个函数从测试中取出,因为它们必须有许多失败的结果,而且它们不支持将列表或dict作为值返回,我认为这是必要的,因为一个函数应该为几乎所有的数据做好准备。所以我在100.000次迭代中通过timeit模块泵...
  • 我们将首先对字典进行排序,使用每个元素在keys中的位置作为键。如果我们使用类似于key=len的方法,则将每个元素发送到len()函数并使用返回的长度作为键。我们使用lambda来定义一个内联的、未命名的函数,它接受一...
  • python中的类型分可以分为两类,可变类型和不可变类型 可变类型:dict、list、set 不可变类型:int、long、float、complex、string、bool、tuple 其中可变类型不能作为字典的key,因为它们没有__hash__()方法。 ...
  • __all__ = ["ResNet", "resnet18", "resnet34", "resnet50", "resnet101", "resnet152"] model_urls = { "resnet18": 'https://download.pytorch.org/models/resnet18-5c106cde.pth', 'resnet34': '... ...
  • python字典可以是元组吗

    千次阅读 2020-12-30 06:16:12
    python字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆... 当有键发生冲突(即字典键重复赋值),取最后(最近)的赋值。Python并不会因字典中的键存在冲突而产生一个错误,它...
  • 深入理解Python中字典的使用

    千次阅读 2020-12-30 05:40:22
    字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆可,但是字典中的键是有... 当有键发生冲突(即字典键重复赋值),取最后(最近)的赋值。Python并不会因字典中的键存在冲突而...
  • Python将字典值转换为列表和附加项

    千次阅读 2021-02-03 22:01:32
    我有一本字典,名字叫dictdict,看起来像:dictdict = { 'key1': {'subkey1': 4, 'subkey2': 7},'key2': {'...我想在每个单独的值上附加一个列表,保留已经存在的值作为新值列表中的第一项。因此,期望的结果将具...
  • 最近研究返回列表,稍微总结一下,以后继续补充:字典是比列表更先进的一种内置数据结构。“字典”就像现实中的字典一样,每一个单词对应好几个意思。在Python面里就是每一个对应一个关联值。在Python中,我们可以...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 112,501
精华内容 45,000
关键字:

列表作为字典的键