【问题标题】:How to merge cells in python3如何在python3中合并单元格
【发布时间】:2014-11-06 22:10:00
【问题描述】:

我正在尝试在 python3 中将两个单元格合并在一起。如有任何意见,我将不胜感激。

这是我的脚本的一部分:

with open(input) as infile, open (output, 'w') as outfile:
    reader = csv.reader(infile, delimiter='\t')
    writer = csv.writer(outfile, delimiter='\t')
    for gg, poss, codee, ref, alt, *rest in reader:
        gg = int(gg)
        poss = int(poss)
        writer.writerow([gg, poss, codee, d[group][poss-1], "ref+alt"] + rest)

我试图让列“ref”与“alt”合并(最后一行中的“ref+alt”),所以我的列将包含列“gg”、“poss”、“codee”、“ d[group][poss-3]”和“ref”+“alt”。

“ref”列如下所示:

A
B
C

而“alt”列有多个用逗号分隔的字母:

A,B
C,D,H
B,F,S

写最后一行以便“ref”和“alt”像这样合并的正确方法是什么?

A,A,B
B,C,D,H
C,B,F,S

【问题讨论】:

    标签: python csv python-3.x


    【解决方案1】:

    "ref+alt" 只是字符串ref+alt,但它实际上并不评估这些变量(它真的不应该)。如果要连接两个字符串,可以对这些变量使用 + 运算符:

    ref + alt
    

    如果你想在中间插入一个逗号,你还可以添加:

    ref + ',' + alt
    

    【讨论】:

      【解决方案2】:

      您可以使用表达式:','.join((v for v in (ref, alt) if v)),如果refaltisNone或空字符串'',则省略命令。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-11-30
        • 2011-08-03
        • 2013-05-22
        • 2014-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多