Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.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 UnicodeEncodeError:“ascii”编解码器无法对位置0-9中的字符进行编码:序号不在范围内(128)_Python_Python 2.7_Pandas_Encoding - Fatal编程技术网

Python UnicodeEncodeError:“ascii”编解码器无法对位置0-9中的字符进行编码:序号不在范围内(128)

Python UnicodeEncodeError:“ascii”编解码器无法对位置0-9中的字符进行编码:序号不在范围内(128),python,python-2.7,pandas,encoding,Python,Python 2.7,Pandas,Encoding,编写此代码时: df['new'] = df.astype(str).apply(' '.join, axis=1) 它导致: UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-9: ordinal not in range(128) df包含希腊字符 在阅读了类似问题中有关编码的内容后,我无法将其应用于这种情况,而是使用了: import sys reload(sys) sys.setdefaul

编写此代码时:

df['new'] = df.astype(str).apply(' '.join, axis=1)
它导致:

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-9: ordinal not in range(128)
df包含希腊字符

在阅读了类似问题中有关编码的内容后,我无法将其应用于这种情况,而是使用了:

import sys
reload(sys)
sys.setdefaultencoding('utf8')
尽管它奏效了。并非所有人都支持使用此功能。因为它可能会导致以后的错误,我想看看你在这个具体情况下的建议


数据与以下内容一起导入:DataFrame.from_记录,因此它不能接受编码作为参数。

尝试对字符串进行简单编码:

df['new'] = df.astype(str).apply(' '.join, axis=1).encode("utf-8")
并将其添加到代码的顶部

# -*- coding: utf-8 -*-

尝试对字符串进行简单编码:

df['new'] = df.astype(str).apply(' '.join, axis=1).encode("utf-8")
并将其添加到代码的顶部

# -*- coding: utf-8 -*-

我发现原因是我们的远程服务器不支持中文。因此,我已将所有打印内容改为英文。

我发现原因是我们的远程服务器不支持中文。所以我已将所有打印内容更改为英语。

您是否尝试将编码设置为ISO-8859-1?在什么时候将itTry SETING encoding=ISO-8859-1设置为pd.read\u CSV中的参数?问题是我使用以下内容读取数据:DataFrame.from\u记录,该记录没有编码参数。您是否尝试将编码设置为ISO-8859-1?在什么时候将itTry SETING encoding=ISO-8859-1设置为pd.read_CSV中的参数问题是我使用以下内容读取数据:DataFrame.from_记录,该记录没有编码参数。看起来很有希望。如何重置我之前使用sys.setdefaultencoding'utf8'传递的设置。所以我可以输入你的代码?@user51332我从未使用过sys setdefaultencoding,也没有问题。这种编码为utf-8的方法每天都适用于我;这是你输入的。我不知道为什么它不起作用。唯一起作用的是我在问题中输入的内容。但这不是建议的方法,而且容易出错,这是很有希望的。如何重置我之前使用sys.setdefaultencoding'utf8'传递的设置。所以我可以输入你的代码?@user51332我从未使用过sys setdefaultencoding,也没有问题。这种编码为utf-8的方法每天都适用于我;这是你输入的。我不知道为什么它不起作用。唯一起作用的是我在问题中输入的内容。但这不是建议的方法,而且容易出错