我的 python 文件中的垃圾
Trash in my python file
我正在 Python 中制作一个脚本,以获取一些脚本并将它们放入确定的大小(在本例中为 37),并在必要时添加一些空格。我完成了它,我认为它工作得很好,但后来我看到将编码从 Ansi 更改为 Utf-8,反之亦然,空格有一些垃圾。这是我的代码:
from __future__ import print_function
from openpyxl import load_workbook
import sys
import openpyxl
import codecs
doc_name = input('Enter Excel document name: ')
wb = load_workbook(doc_name + '.xlsx')
ws = wb.active
sql = open(doc_name + '.sql','w')
column = input('Enter column where I can find gescal (usually B): ')
i = 1
while True:
'''If cell empty finish'''
cell = ws[column + str(i)].value
if cell == None:
break
'''Calculate Gescal 37'''
lengthcell = len(cell)
if lengthcell < 37:
gescal37 = cell + (' '*(37-lengthcell))
elif lengthcell > 37:
gescal37 = cell[:37]
else:
gescal37 = cell
'''Calculate gescal 17'''
gescal17 = gescal37[:17]
'''Write it in the document'''
sql.write('update installationuser set GESCAL37 = \'' + gescal37 + '\' where GESCAL37 = \'' + gescal17 + '\';\n')
i += 1
sql.close()
我尝试用utf-8编码打开文档,但我用其他方式也遇到了同样的问题。使用 utf-8 编码看起来很不错,但是当我尝试使用 Ansi 编码显示它时……砰!空白处有垃圾。
\xa0
是一个不间断的 space。
尝试使用 gescal = gescal.replace(u'\xa0', ' ')
将其替换为 space.
我正在 Python 中制作一个脚本,以获取一些脚本并将它们放入确定的大小(在本例中为 37),并在必要时添加一些空格。我完成了它,我认为它工作得很好,但后来我看到将编码从 Ansi 更改为 Utf-8,反之亦然,空格有一些垃圾。这是我的代码:
from __future__ import print_function
from openpyxl import load_workbook
import sys
import openpyxl
import codecs
doc_name = input('Enter Excel document name: ')
wb = load_workbook(doc_name + '.xlsx')
ws = wb.active
sql = open(doc_name + '.sql','w')
column = input('Enter column where I can find gescal (usually B): ')
i = 1
while True:
'''If cell empty finish'''
cell = ws[column + str(i)].value
if cell == None:
break
'''Calculate Gescal 37'''
lengthcell = len(cell)
if lengthcell < 37:
gescal37 = cell + (' '*(37-lengthcell))
elif lengthcell > 37:
gescal37 = cell[:37]
else:
gescal37 = cell
'''Calculate gescal 17'''
gescal17 = gescal37[:17]
'''Write it in the document'''
sql.write('update installationuser set GESCAL37 = \'' + gescal37 + '\' where GESCAL37 = \'' + gescal17 + '\';\n')
i += 1
sql.close()
我尝试用utf-8编码打开文档,但我用其他方式也遇到了同样的问题。使用 utf-8 编码看起来很不错,但是当我尝试使用 Ansi 编码显示它时……砰!空白处有垃圾。
\xa0
是一个不间断的 space。
尝试使用 gescal = gescal.replace(u'\xa0', ' ')
将其替换为 space.