Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 写入xlsx文件-换行导致问题_Python_Excel_Openpyxl - Fatal编程技术网

Python 写入xlsx文件-换行导致问题

Python 写入xlsx文件-换行导致问题,python,excel,openpyxl,Python,Excel,Openpyxl,我正在尝试使用openpyxl模块将一些文本写入xlsx文件。在我尝试编写文本之前,它一直运行良好(text='\n'.join(句子列表)) 它似乎写得正确(没有出现错误),但当我试图打开文件时,openoffice冻结了。文件不知怎么被破坏了 我已经试过了text=r'\n'.join(句子列表),但是没有用 也许是因为这个警告: C:\Python27\lib\site-packages\openpyxl\styles\styleable.py:111: UserWarning: Use

我正在尝试使用
openpyxl
模块将一些文本写入
xlsx
文件。在我尝试编写文本之前,它一直运行良好(
text='\n'.join(句子列表)

它似乎写得正确(没有出现错误),但当我试图打开文件时,openoffice冻结了。文件不知怎么被破坏了

我已经试过了
text=r'\n'.join(句子列表)
,但是没有用

也许是因为这个警告:

C:\Python27\lib\site-packages\openpyxl\styles\styleable.py:111: UserWarning: Use formatting objects such as font directly
  warn("Use formatting objects such as font directly")
你能给我一个正确的建议吗

编辑-代码:

with open(file) as f:
    for line in f:
        i+=1

        splitted = line.strip('\n').split('::')
        name = splitted[0]
        text = splitted[1].split('***')
        text_xlsx = '\n'.join(text)
        # text_xlsx.replace('_x000D_','\n')
        worksheet.cell('B{}'.format(i)).style.alignment.wrap_text = True
        worksheet.cell('B{}'.format(i)).value = text_xlsx
文本_xlsx的示例:

'dir\\dir\\dir\\dir\\dir\\.file_name.pl-pl::\xef\xbb\xbf<p><strong class="title">&euro;this</strong></p>***<p><span class="text">Please add Peter\'s account &euro;1!.<br /> <a target="_blank" href="some url">click to redirect</a></span></p>\n'
'dir\\dir\\dir\\dir\\dir\\.file\u name.pl pl::\xef\xbb\xbf&euro;此

***请添加彼得的账户和欧元;1!.

\n'
我刚刚尝试使用openpyxl在单元格中的文本之间使用
\n
写入xls文件,效果非常好。这里也是一样,换行符没有问题。你确定问题是因为换行吗?警告完全没有关系。它只是建议您将代码更新到新的样式API。伙计们,我已经在那里添加了我的代码,以便您可以检查哪里可能存在问题。我不得不说,这是一个来自pl文件的文本,包含文本、html等@Ericleveil它可以工作,没问题。对于另一个文件,它也可以工作。我认为这是因为它认为这些文本中有特殊字符标签,超链接等等。所以我可能要做的是告诉openpyxl它是纯文本。