这是我的制表符分隔文件的两个示例行:
id reference_rc_001 alternative_rc_001 reference_rc_002 alternative_rc_002 reference_rc_003 alternative_rc_003
id1 0 433 0 0 69
我想每两列合并一次字段。示例输出应该是这样的。这是python脚本的一个步骤。所以必须用python
完成id reference_rc_001alternative_rc_001 reference_rc_002alternative_rc_002 reference_rc_003alternative_rc_003
id1 0433 00 690
答案 0 :(得分:0)
这看起来非常可怕,可能是最糟糕的方式,可能和驴子一样高效,但..... 我认为它有效。
您需要打开文件,最好使用with
,这样您就可以遍历文件中的各行。 (许多其他的SO文章将通过一个不错的解释来解决这个问题,所以我不会这样做。)
然后在演示for
循环中使用一些代码:
for line in file:
items = line.split("\t")
counters = range(len(items)/2)
new_items = [items[0]] + [items[1+2*x] + items[2+2*x] for x in counters ]
new_line = '\t'.join(new_items)
print new_line
解释:
我将每一行拆分为一个列表(使用制表符作为分隔符)。
然后我通过索引列表中的n和n + 1个元素并将它们一起添加(作为字符串)来创建新列表。
最后,要使用制表符分隔的条目重新创建一行文本,我将join
新的列表与制表符分隔符一起#!/usr/bin/env bash
headers='-H "custom1: ololo1" -H "custom2: ololo2"'
value_for_header="value"
curl -X "PUT" -H "Content-Type: application/json" -H "custom_ololo: $value_for_header" $headers http://localhost:8000/ -d '{"a": true}' -vv
。
希望能为您提供解决方案所需的部分。