小编use*_*300的帖子

如何将字典写入现有文件?

假设我有一本字典,我想将其写入现有文件.如何在不丢失文件中可能存在的任何内容的情况下这样做?我在想的是做了以下事情:

def write_report(r, filename):
        input_filename=open(filename, "a")
        input_filename.close()
        for (k,v) in r.items():
               input_filename.write(k,v)
        return filename
Run Code Online (Sandbox Code Playgroud)

我想确定的是文件名正确包含字典.

python dictionary python-3.3

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

交错2个不等长度的列表

我希望能够交错两个可能长度不等的列表.我有的是:

  def interleave(xs,ys):
    a=xs
    b=ys
    c=a+b
    c[::2]=a
    c[1::2]=b
    return c
Run Code Online (Sandbox Code Playgroud)

这适用于长度相等或只有+/- 1的列表.但是如果让我们说xs = [1,2,3]和ys = ["hi,"bye","no","yes","why"]这条消息出现:

c[::2]=a
ValueError: attempt to assign sequence of size 3 to extended slice of size 4
Run Code Online (Sandbox Code Playgroud)

如何使用索引修复此问题?或者我必须使用for循环?编辑:我想要的是让额外的值出现在最后.

python indexing for-loop list

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

如何在python中正确地重新排列列表

我有这个代码,洗牌清单.我首先将它分成两个列表,因为我有一个交错函数,交错2个列表:

def shuffle(xs, n=1):
    il=list()
    if len(xs)%2==0:
        stop=int(len(xs)//2)
        a=xs[:stop]
        b=xs[stop:]
        print(a)
        print(b)
    else:
        stop=int(len(xs)//2)
        a=xs[:stop]
        b=xs[stop:]
        print(a)
        print(b)
    if n>0:
        for i in range(n):
            shuffle=interleave(a,b)
    else:
        return 
    return shuffle
Run Code Online (Sandbox Code Playgroud)

当我测试它时:

>>> shuffle([1,2,3,4,5,6,7],1)
[1, 2, 3]
[4, 5, 6, 7]
1
[7]
[7, 4]
[1, 4, 2, 5, 3, 6, 7, 4]
Run Code Online (Sandbox Code Playgroud)

列表中的4是两次,为什么打印1,[7],7,4] ??

编辑:

def interleave(xs,ys):
    a=xs
    b=ys
    minlength=[len(a),len(b)]
    extralist= list()
    interleave= list()
    for i in range((minval(minlength))):
        pair=a[i],b[i]
        interleave.append(pair)
        flat=flatten(interleave)
        c=a+b
    if len(b)>len(a):
        remainder=len(b)-len(a)
        for j in range(remainder,-1,-1):
            extra=b[-j]
            extralist.append(extra) …
Run Code Online (Sandbox Code Playgroud)

python user-defined-functions python-3.x

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