Python 使用pip导入Wikipedia时出错
我正在使用Python2.7并尝试使用以下代码Python 使用pip导入Wikipedia时出错,python,python-2.7,character-encoding,Python,Python 2.7,Character Encoding,我正在使用Python2.7并尝试使用以下代码 import wikipedia input = raw_input("Question: ") print wikipedia.summary(input) 我在运行代码时看到此错误: 回溯(最近一次调用last):文件“wik.py”,第5行,在 打印wikipedia.summary(输入)文件“C:\Anaconda2\lib\encodings\cp437.py”,第12行,在encode中 返回编解码器。charmap_编码(输入、
import wikipedia
input = raw_input("Question: ")
print wikipedia.summary(input)
我在运行代码时看到此错误:
回溯(最近一次调用last):文件“wik.py”,第5行,在
打印wikipedia.summary(输入)文件“C:\Anaconda2\lib\encodings\cp437.py”,第12行,在encode中
返回编解码器。charmap_编码(输入、错误、编码_映射)UnicodeEncodeError:“charmap”编解码器无法编码字符u'\u2013'
在位置38:角色映射到未定义
我怎样才能解决这个问题?提前感谢。Python 2默认为ASCII,它只映射\u0000和\u007F1之间的字符。您需要使用不同的编码才能正确获取此字符(\u2013是一个长破折号)以及ASCII以外的许多其他字符 使用UTF-8应该适合您,我相信此打印语句将正确输出文本:
print wikipedia.summary(input).encode("utf8")
有关此问题的更多信息,请检查类似问题: 您正在输入什么内容?您是否尝试过打印维基百科摘要(输入)。编码('utf8')?是的,它起作用了。谢谢该语句在Python3中可以工作吗?唯一需要更改的是在print中使用括号(Python2和Python3之间的语法差异)。