pythonにおけるopen関数のencoding引数について


以下のようなコードを書いてデータのファイルへの書き込みを試みたのですが、以下のようなエラーが出てしまいます...。  
どのように下のコードを修正すれば、簡潔にtextデータをファイルに書き込めますでしょうか...?教えていただけると助かります。(ちなみに自分が使っているpythonはpython2でした...。)

コード

[code]

       with open(text_file, 'w', encoding="utf-8") as fp:#エラーが発生してしまう場所
                        fp.write(text)
    
[/code]

エラー

[code]

        Traceback (most recent call last):
      File "ExtractText.py", line 36, in <module>
        with open(text_file, 'w', encoding="utf-8") as fp:
    TypeError: 'encoding' is an invalid keyword argument for this function
    
[/code]

ちなみにencoding引数を消すと以下のようなエラーになります... 。

コード

[code]

    with open(text_file, 'w') as fp:#エラーが発生してしまう場所
                    fp.write(text)
    
[/code]

エラー

[code]

        Traceback (most recent call last):
      File "ExtractText.py", line 37, in <module>
        fp.write(text)
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-10: ordinal not in range(128)
    
[/code]




読み込み時ではなく、書き込み時の

[code]

    fp.write(text)
    
[/code]

でエラーが発生しているのではないでしょうか。

[code]

    for.write(text.encode("utf-8"))
    
[/code]

とできませんか？

