Python 3.4:cStringIO 与 StringIO

Python 3.4 : cStringIO vs. StringIO

问题

我正在返回一个 ImportError:没有名为 'cStringIO' 的模块。不幸的是,cStringIO 不再存在,我需要使用 StringIO 作为替代。我该怎么做?

import edgar
import ftplib
from io import StringIO 

ftp = ftplib.FTP(edgar.FTP_ADDR)
ftp.login()
try:
   edgar.download_all(ftp, "/tmp")
except Exception as e:
   print(e)
finally:
   ftp.close()

输出

Traceback (most recent call last):
File "/usr/local/lib/ana/lib/python3.4/site-         packages/edgar/downloader.py", line 5, in <module>
from cStringIO import StringIO
ImportError: No module named 'cStringIO'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/aranjohn/PycharmProjects/edgar/secEd.py", line 1, in     <module>
import edgar
File "/usr/local/lib/ana/lib/python3.4/site-  packages/edgar/__init__.py", line 1, in <module>
from .downloader import FTP_ADDR, file_list, download, download_all
File "/usr/local/lib/ana/lib/python3.4/site-  packages/edgar/downloader.py", line 7, in <module>
from StringIO import StringIO
ImportError: No module named 'StringIO'

Process finished with exit code 1

StringIO 不再存在于 3.x 中。对文本使用 io.StringIO 或对字节使用 io.BytesIO