オンラインで大部分の英語の単語のリストを見つけましたが、改行はUNIXスタイル(Unicodeでエンコード:UTF-8)です。私はこのウェブサイトでそれを見つけました:http://dreamsteep.com/projects/the-english-open-word-list.html
改行をCRLFに変換して、それらを反復処理できるようにするにはどうすればよいですか?それらを使用するプログラムはファイルの各行を通過するため、単語は1行に1つずつである必要があります。
これはファイルの一部です:bitbackbitebackbiterbackbitersbackbitesbackbitingbackbittenbackboard
そのはず:
bit
backbite
backbiter
backbiters
backbites
backbiting
backbitten
backboard
ファイルをこのタイプに変換するにはどうすればよいですか?注:これは26個のファイル(1文字に1個)で、合計で80,000語程度です(したがって、プログラムは非常に高速である必要があります)。
Unicodeを使用したことがないため、どこから始めればよいかわかりません。前もって感謝します!
rU
(提案されているように)パラメーターとして使用し、これを私のコードで使用します:
with open(my_file_name, 'rU') as my_file:
for line in my_file:
new_words.append(str(line))
my_file.close()
このエラーが発生します:
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
addWords('B Words')
File "D:\my_stuff\Google Drive\documents\SCHOOL\Programming\Python\Programming Class\hangman.py", line 138, in addWords
for line in my_file:
File "C:\Python3.3\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 7488: character maps to <undefined>
誰かがこれを手伝ってくれますか?