2017-04-25 8 views
0

ファイルを開き、各文字列の5番目の文字を連結すると、新しい文字列の各文字が重複しています。これをどうすれば解決できますか?あなたはbeginigから小枝空間と最終用途をreamoveしたい場合は、削除したい場合は私のコードが複数の文字を生成するのはなぜですか?

def fifthchar(filename): 
     l="" 
     fin=open(filename, "r") 
     for line in fin: 
      line=line.strip() 
      line=str(line) 
      for i in line: 
       if len(line)>=5: 
        a=line[4] 
        l+=a 
     fin.close() 
     return l 

答えて

0
def fifthchar(filename): 
    l='' 
    lines = [] 
    fin=open(filename, 'r') 
    all_lines = fin.read().decode("utf-8-sig").encode("utf-8") 
    lines = all_lines.splitlines() 
    line ='' 
    for line in lines: 
     line=str(line) 
     line=line.strip() 
     print line 
     if len(line)>=5: 
      a=line[4] 
      l+=a 
    fin.close() 
    return l 
if __name__ == '__main__': 
    print fifthchar("read_lines.txt") 

line = line.strip()

文字列からすべての空白は使用

line = line.replace(" ","")

この行a予想されるBOMが自動的に削除されます。

all_lines = fin.read().decode("utf-8-sig").encode("utf-8")

for details

これが役立つことを願っています。

0

ただ、それに応じて、この不要な行やインデントを削除:あなたが行の各文字の連結をやっていた

for i in line: 

このような理由。

関連する問題