草庐IT

charset-utf

全部标签

Python UTF-16 CSV 阅读器

我有一个必须阅读的UTF-16CSV文件。Pythoncsv模块似乎不支持UTF-16。我正在使用python2.7.2。我需要解析的CSV文件很大,有几GB的数据。下面是JohnMachin问题的答案printrepr(open('test.csv','rb').read(100))输出内容只有abc的test.csv'\xff\xfea\x00b\x00c\x00'我认为csv文件是在美国的Windows机器上创建的。我正在使用MacOSXLion。如果我使用phihag提供的代码和包含一条记录的test.csv。使用的示例test.csv内容。下面是printrepr(open(

python - 使用pyinstaller时出错: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff

我在使用pyinstaller编译PyQt代码时遇到问题。我用这一行来编译:c:\Anaconda3\Scripts\pyinstaller.exe-y-F--distpath="."MyQt.py然后我收到此错误消息:File"c:\anaconda36bis\lib\site-packages\PyInstaller\hooks\hook-zmq.py",line18,inhiddenimports.extend(collect_submodules('zmq.backend'))File"c:\anaconda36bis\lib\site-packages\PyInstaller

python - 'utf- 8' codec can' t 解码字节 0xa0 在位置 4276 : invalid start byte

我尝试读取并打印以下文件:txt.tsv(https://www.sec.gov/files/dera/data/financial-statement-and-notes-data-sets/2017q3_notes.zip)根据SEC,数据集以单一编码提供,如下所示:TabDelimitedValue(.txt):utf-8,tab-delimited,\n-terminatedlines,withthefirstlinecontainingthefieldnamesinlowercase.我当前的代码:importcsvwithopen('txt.tsv')astsvfile:r

python - Unicode解码错误: 'utf-8' codec can't decode byte error

我正在尝试从urllib获取响应并对其进行解码为可读格式。文本为希伯来语,还包含{和/等字符首页编码为:#-*-coding:utf-8-*-原始字符串是:b'\xff\xfe{\x00\x00\r\x00\n\x00"\x00i\x00d\x00"\x00\x00:\x00\x00"\x001\x004\x000\x004\x008\x003\x000\x000\x006\x004\x006\x009\x006\x00"\x00,\x00\r\x00\n\x00"\x00t\x00i\x00t\x00l\x00e\x00"\x00\x00:\x00\x00"\x00\xe4\x05\

python - Python 3.5编码utf-8和utf8的区别

编码utf-8和utf8(如果有的话)有什么区别?给定以下示例:u=u'€'print('utf-8',u.encode('utf-8'))print('utf8',u.encode('utf8'))它产生以下输出:utf-8b'\xe2\x82\xac'utf8b'\xe2\x82\xac' 最佳答案 没有区别。查看tableofstandardencodings.专门针对'utf_8',以下都是有效的别名:'U8','UTF','utf8'另请注意第一段中的声明:Noticethatspellingalternativestha

Mysql导入sql文件报COLLATION ‘utf8_general_ci‘ is not valid for CHARACTER SET ‘utf8mb4‘原因

这个错误通常是因为MySQL数据库版本较旧,不支持使用utf8mb4字符集,而使用了utf8mb4字符集的COLLATION排序规则。utf8mb4字符集支持存储更多的字符,包括一些表情符号等,而utf8字符集则不支持。如果MySQL版本不支持utf8mb4字符集,就会出现以上错误。解决这个问题的方法是升级MySQL到支持utf8mb4字符集的版本,或者使用MySQL支持的字符集和排序规则来创建数据表。例如,可以使用utf8字符集和utf8_general_ci排序规则来创建数据表:CREATETABLEtable_name(idINT(11)NOTNULLAUTO_INCREMENT,col

python - 使用 pure & pythonic 库将 Unicode/UTF-8 字符串转换为小写/大写

我使用GoogleAppEngine,不能使用任何C/C++扩展,只能使用纯pythonic库将Unicode/UTF-8字符串转换为小写/大写。str.lower()和string.lowercase()不会。 最佳答案 以UTF-8编码的str和unicode是两种不同的类型。不要使用string,在unicode对象上使用适当的方法:>>>printu'ĉ'.upper()Ĉ使用前将str解码为unicode:>>>print'ĉ'.decode('utf-8').upper()Ĉ

python - 在python中将unicode代码点转换为UTF8 hex

我想将从文件中读取的一些unicode代码点转换为它们的UTF8编码。例如,我想将字符串'FD9B'转换为字符串'EFB69B'。我可以像这样使用字符串文字手动执行此操作:u'\uFD9B'.encode('utf-8')但我不知道如何以编程方式进行。 最佳答案 使用内置函数chr()将数字转换为字符,然后对其进行编码:>>>chr(int('fd9b',16)).encode('utf-8')'\xef\xb6\x9b'这是字符串本身。如果您希望字符串为ASCII十六进制,则需要使用hex(ord(c))或类似方法遍历并将每个字符

python - 完全等同于 `b' .. .'.decode("utf- 8", "backslashreplace")` in Python 2

在Python3.5+中,.decode("utf-8","backslashreplace")是处理部分Unicode、部分未知遗留编码二进制字符串的一个很好的选择.有效的UTF-8序列将被解码,无效的序列将被保留为转义序列。例如>>>print(b'\xc2\xa1\xa1'.decode("utf-8","backslashreplace"))¡\xa1这失去了b'\xc2\xa1\xa1'和b'\xc2\xa1\\xa1'之间的区别,但是如果你在“只要给我一些不太有损的东西,我以后可以手动修复”的心态,这可能没问题。但是,这是Python3.5中的新功能。我正在处理的程序还需要

python - 完全等同于 `b' .. .'.decode("utf- 8", "backslashreplace")` in Python 2

在Python3.5+中,.decode("utf-8","backslashreplace")是处理部分Unicode、部分未知遗留编码二进制字符串的一个很好的选择.有效的UTF-8序列将被解码,无效的序列将被保留为转义序列。例如>>>print(b'\xc2\xa1\xa1'.decode("utf-8","backslashreplace"))¡\xa1这失去了b'\xc2\xa1\xa1'和b'\xc2\xa1\\xa1'之间的区别,但是如果你在“只要给我一些不太有损的东西,我以后可以手动修复”的心态,这可能没问题。但是,这是Python3.5中的新功能。我正在处理的程序还需要