2016-07-21 3 views
-1

私は各行に1つの単語を持つテキストファイルを持っています。私はテキストファイルを持っています。 Pythonを使って行に変換してください

私はそれをPythonを使って行に変換したいと思います。

入力: file.txt

word1 in row1 
word2 in row2 
word3 in row3 
word4 in row4 

予想される出力: ['word1.Z', 'word2.Z', 'word3.Z', 'word4.Z']

+1

だから、行または列に変換したいですか? –

+0

'.Z'と何が関係しているのかは不明です。 '' .Z "'を実行していますか?あなたの入力は、1行に複数の単語が含まれているようです:P –

+0

これまでに何を試しましたか?あなたのコードを掲載し、どのパートに問題があるのか​​を明記してください。 – cdarke

答えて

0

は、これはあなたが始める必要があります。

filename = 'test.txt' 
words = open(filename, 'r').readlines() 

readlines()は、各要素は、ファイルの1行でリストを作成します、あなたのwordsリストはのようになります。

+1

これは、各リスト項目の末尾に改行を残します。 –

3
['%s.Z'%s for s in open('myfile.txt').read().split()] 

場合、またはmyfile.txt大きいです:

['%s.Z'%s for s in open('myfile.txt').readline().split()] 
+1

'read()。split()'は 'readline()。strip()'にする必要がありますか? –

+1

@joelgoldstick 'read'を使うと' split'は後続の改行を避けます。 – Frodon

+0

@joelgoldstickこれは 'readline()。strip()' - >: '['t.Z'、 'e.Z'、 's.Z'、 't.Z']' –

0

あなたは、コードのこの部分を使用することができます:それはtest.txtで各ラインを読み、言葉 "

と呼ばれるリストに保存されます

次に、それぞれの単語をループして、"\n"を削除し、".Z"を追加します。

filename = 'test.txt' 
words = open(filename, 'r').readlines() 

new_words = [] 

for word in words: 
    new_word = word.strip("\n") + ".Z" 
    new_words.append(new_word) 

new_words 

出力:

['test.Z','this.Z','text.Z','is.Z','written.Z','in.Z','many.Z','lines.Z'] 
関連する問題