2016-09-26 17 views
0

私はリストを持っています。 ['hello',', ','how','are','you','?']となりたい"hello, how are you?" これをやってもらえますか?文章に句読点を含むリストを再構築するには? Python 3.5

私も、私はコードを使用して、テキストドキュメントからこれを開封しておりますことに注意してください:

with gzip.open('task3.txt.gz', 'r+') as f: 
    reconstruct = f.readline() 
    reconstruct2 = f.readline() 
    reconstruct3 = f.readline() 
    reconstruct4 = f.readline() 
    f.close() 

だから私のリストはb'["hello", ",", "how", "are", "you", "?"]\n'として出てくるが、これは私が新しい行でそれらを保存した事実に関連している可能性が?

答えて

0

私はあなたが(参加を探している、と信じて):引用符の内容は、あなたの言葉の間に挿入されること

>>> a = ['hello',', ','how','are','you','?'] 
>>> " ".join(a) 
'hello , how are you ?' 

注意、。だから、 ""と ""の間にスペースを挿入する ""を使いたいのであれば、 ""を使用するかどうかを決める必要がありますが、各単語の最後にスペースを挿入します(配列はその:[「こんにちは」、「」、 『どのように』、 『ある』、 『あなた』、 『?』])

+0

私はそれがまさに問題だと思う - 適切に余分なスペースで文を再構築する方法。 – alecxe

+0

次に、余分なスペースがあってはならないと思います。この例では、 "、"が含まれています。これは、OPが実際に探しているものを誤解を招くようなものです。 – ABCDEF

1

することはでき、実際に適切にdetokenizenltk's moses detokenizerとバック文にトークンのリスト(現時点ではnltkトランクで利用可能 - まだリリースされていません):

In [1]: from nltk.tokenize.moses import MosesDetokenizer 

In [2]: l = ['hello', ', ', 'how', 'are', 'you', '?'] 

In [3]: detokenizer = MosesDetokenizer() 

In [4]: detokenizer.detokenize(l, return_str=True) 
Out[4]: u'hello, how are you?' 
関連する問題