2016-10-18 13 views
3

文字列の最後の文字をファイルから読み込むPythonで印刷します。私はstr[-1]と呼んでいますが、うまくいきません。Pythonの文字列の最後の文字を返します

t.txtが含まれてい

Do not laugh please!  9 

Are you kidding me?  4 

私のコードは

with open('t.txt', 'r') as f: 
      for line in f: 
       print(line) 
       print(line[-1]) 
       #break 

である。しかし、それは何も印刷されていません。

+0

ファイル全体または各行の最後の文字を入力しますか? –

答えて

13

各行の最後の文字は、改行文字です。あなたはstripそれを得ることができます:

print(line.strip()[-1]) 
# or print(line.rstrip()[-1]) 
+0

Goshhhhh !!!!それは働いている。 – Amar

+0

私は[-1]トリックを知らなかった!驚くばかり! –

+1

@Amar:可能な限り明確にするために、ファイルの最初の行は ''笑わないでください!9 \ n "'です。 –

0

シンプルな文字列を取って、先と後ろのスペースをクリアします。その後、あなたのケースの最後の文字を返します。さもなければ、単に最後の文字を返します。

line=line.strip() 
return line[-1] 
+3

これは既に提供されている回答にどのように追加されていますか? – brianpck

+0

私はちょうど説明を与えました、そしてまた、その質問は何か重要です、私は最初に尋ねます。 – Sameer

関連する問題