2017-09-13 49 views
-1
的足夠數量

你好,我是新的Python和有一點問題 預先感謝您解決這個問題,我無法理解:(雙for循環不會導致線路

這裏的兩個文件我要打印蟒蛇殼

文件1是這樣的:

chr6 43547333,43547553 CTCF 

chr6 43547100,43547500 TFTF 

chr6 43547200,43547699 AAAA 

和,文件2看起來是這樣的:

1114 NR_073422 chr6 + 43547400 43547700 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

1114 NR_073422 chr6 + 43547100 43547200 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

,我試圖嘗試這樣

ENCODE_edit = open("/media/jiyeonh/external/3.ENCODE/test_1.txt","r") 
ACTN1_raw = open("/media/jiyeonh/external/3.ENCODE/test_2.txt","r") 
for a in ENCODE_edit.readlines(): 
    print(a) 
    for b in ACTN1_raw.readlines(): 
    print(b) 

Python代碼我預計

chr6 43547333,43547553 CTCF 

1114 NR_073422 chr6 + 43547400 43547700 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

1114 NR_073422 chr6 + 43547100 43547200 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 


chr6 43547100,43547500 TFTF 

1114 NR_073422 chr6 + 43547400 43547700 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

1114 NR_073422 chr6 + 43547100 43547200 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 


chr6 43547200,43547699 AAAA 

1114 NR_073422 chr6 + 43547400 43547700 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

1114 NR_073422 chr6 + 43547100 43547200 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1 

,但我的結果是這樣的

chr6 43547333,43547553 CTCF 

1114 NR_073422 chr6 + 43547400 43547700 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 

1114 NR_073422 chr6 + 43547100 43547200 69454180 69454180 4 69446398,69446644,69452401,69454061, 69446501,69446904,69452518,69454180, 0 ACTN1-AS1 unk unk -1,-1,-1,-1, 


chr6 43547100,43547500 TFTF 

chr6 43547200,43547699 AAAA 

查看結果:Link

我不能明白爲什麼它不' t在第二和第三回路重複內部循環

我做錯了什麼? :(

+0

你試過是一個更容易的結構嗎?這看起來很奇怪,因爲據我所見,代碼應該返回你所期望的... – Glostas

回答

0

嘗試此代碼

ENCODE_edit = open("/media/jiyeonh/external/3.ENCODE/test_1.txt","r") 
for a in ENCODE_edit.readlines(): 
    print(a) 
    ACTN1_raw = open("/media/jiyeonh/external/3.ENCODE/test_2.txt","r") 
    for b in ACTN1_raw.readlines(): 
    print(b) 
    ACTN1_raw.close() 

readlines方法()使用的ReadLine(),並返回含因此線讀取的列表讀直至EOF,所以在代碼,在外環的第二次執行中, ACTN1_raw.readlines()可能在EOF和多數民衆贊成在爲什麼不返回任何東西

+0

它的工作原理!!!!甚至不知道EOF是什麼意思,但由於你的親切解釋而學會了它:)非常感謝你 – dianahan