如何从一系列形成三胞胎

时间:2017-05-22 06:01:41

标签: python bash perl file-processing

File1包含一系列逗号分隔的基因:
A,B,C,D,E,F

所需的输出是可以由该系列形成的三联体的组合:
ABC
BCD
CDE
DEF

从第一个三联体中的前三个基因开始形成三联体。第二个三元组由第二个,第三个和第四个形成。先前三联体的第二个基因构成了后续三联体的第一个基因。最后一个三联体应以最后一个基因结束。

2 个答案:

答案 0 :(得分:1)

echo 'A,B,C,D,E,F,G,H,I' | awk -F, '{for(c=1;c<=NF-2;c++) print $c $(c+1) $(c+2)}'
ABC
BCD
CDE
DEF
EFG
FGH
GHI

答案 1 :(得分:0)

假设input.txt包含

a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z

以下代码将提供所需的输出

lines = [i for i in open('input.txt').read().split(",")]
for i in range(len(lines)-2):
  print(''.join(lines[i:i+3]))

<强>输出

abc
bcd
cde
def
efg
fgh
ghi
hij
ijk
...
qrs
rst
stu
tuv
uvw
vwx
wxy
xyz