小编Jan*_*asa的帖子

如何合并具有相同键名的两个词典

我是Python的新手,我正在尝试编写一个将在python中合并两个字典对象的函数.例如

dict1 = {'a':[1], 'b':[2]}
dict2 = {'b':[3], 'c':[4]}
Run Code Online (Sandbox Code Playgroud)

我需要生成一个新的合并字典

dict3 = {'a':[1], 'b':[2,3], 'c':[4]}
Run Code Online (Sandbox Code Playgroud)

函数还应该使用参数"conflict"(设置为True或False).当冲突设置为False时,上面就可以了.当conflict设置为True时,代码将合并字典,如下所示:

dict3 = {'a':[1], 'b_1':[2], 'b_2':[3], 'c':[4]}
Run Code Online (Sandbox Code Playgroud)

我试图附加2个词典,但不知道如何以正确的方式做到这一点.

for key in dict1.keys():
    if dict2.has_key(key):
        dict2[key].append(dict1[key])
Run Code Online (Sandbox Code Playgroud)

python dictionary

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

python中的函数

我试图在python中编写一个线性同余生成器,我在维基百科上找到一小段代码,但在理解它时遇到一些困难.代码如下:

def lcg(modulus, a, c, seed=None):
    if seed != None:
        lcg.previous = seed
    random_number = (lcg.previous * a + c) % modulus
    lcg.previous = random_number
    return random_number / modulus
lcg.previous = 2222
Run Code Online (Sandbox Code Playgroud)

我的问题是什么是" lcg.previous"?我注意到函数已经完成,lcg.previous更新和存储的值.它是在这里声明为函数lcg()的成员变量还是实际上为python中的所有函数设置了某种默认设置?

非常感谢!

python function

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

python 从 ['a','b','c','d'] 到 ['a', 'ab', abc', 'abcd']

我有一个列表['a','b','c','d'],想制作另一个列表,如下所示:['a', 'ab', abc', 'abcd']

谢谢

尝试过:

list1=['a','b','c', 'd']
   
    for i in range(1, (len(list1)+1)):
        for j in range(1, 1+i):
            print(*[list1[j-1]], end = "")
        print()
Run Code Online (Sandbox Code Playgroud)

返回:

a
ab
abc
abcd
Run Code Online (Sandbox Code Playgroud)

它确实打印了我想要的内容,但不确定如何将其添加到列表中,看起来像['a', 'ab', abc', 'abcd']

python list

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

标签 统计

python ×3

dictionary ×1

function ×1

list ×1