<p>这里是我认为最好的方法,使用<a href="http://www.python-excel.org/" rel="nofollow">Python Excel</a>模块,特别是{<cd1>}</p>
<p>假设您有一个工作簿,其中有一个单元格A1,其中有一个Joe Schmo写的注释,上面写着“嗨!”,下面是你应该怎么做的。在</p>
<pre><code>>>> from xlrd import *
>>> wb = open_workbook("test.xls")
>>> sheet = wb.sheet_by_index(0)
>>> notes = sheet.cell_note_map
>>> print notes
{(0, 0): <xlrd.sheet.Note object at 0x00000000033FE9E8>}
>>> notes[0,0].text
u'Schmo, Joe:\nHi!'
</code></pre>
<p><strong>快速解释发生了什么事</strong></p>
<p>因此,<code>xlrd</code>模块是一个非常方便的东西,一旦你弄清楚了(完整的文档<a href="https://secure.simplistix.co.uk/svn/xlrd/trunk/xlrd/doc/xlrd.html?p=4966" rel="nofollow">here</a>)。前两行导入模块并创建一个名为<code>wb</code>的工作簿对象。接下来,我们创建第一个sheet的sheet对象(索引0),并将其命名为<code>sheet</code>(我今天感觉很有创意)。然后,我们使用sheet对象的<code>cell_note_map</code>属性创建一个名为<code>notes</code>的注释对象。这个字典将注释的(行,列)索引作为键,然后以note对象作为值。然后,我们可以使用note对象的<code>text</code>属性提取该注释的文本。在</p>
<p>对于多个注释,您可以在字典中迭代以获取所有文本,如下所示:</p>
^{pr2}$
<p><strong>注意事项</strong></p>
<ul>
<li>{{{cd9}不能保存任何文件</li>
<li>注释的作者总是首先列出,但是可以使用<code>author</code>属性而不是<code>text</code>单独访问。在作者和文本之间也总是有一个<code>\n</code>。在</li>
<li>没有注释的单元格将不会被<code>cell_note_map</code>映射。因此,没有任何注释的完整页将产生一个空字典</li>
</ul>