无法将学位符号放入原始输入

2024-09-29 19:37:35 发布

您现在位置:Python中文网/ 问答频道 /正文

代码中的问题如下所示:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

deg = u'°'
print deg
print '40%s N, 100%s W' % (deg, deg)
codelim = raw_input('40%s N, 100%s W)? ' % (deg, deg))

我尝试为纬度/经度字符串中的分隔符字符生成一个原始的_输入提示符,该提示符应该包括这样一个字符串的示例。print degprint '40%s N, 100%s W' % (deg, deg)都很好——它们分别返回“°”和“40°N,100°W”-raw_input步骤每次都失败。我得到的错误如下:

^{pr2}$

我以为我可以按照here的指示添加编码头来解决这个问题(事实上,这确实使我们可以打印学位号),但我还是在向raw_input添加一个其他安全的字符串时就遇到了Unicode错误。这是怎么回事?在


Tags: 字符串代码inputrawbinusr错误utf
1条回答
网友
1楼 · 发布于 2024-09-29 19:37:35

在将提示字符串传递给原始输入之前,请尝试将其编码为stdouts编码

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import sys

deg = u'°'

prompt = u'40%s N, 100%s W)? ' % (deg, deg)
codelim = raw_input(prompt.encode(sys.stdout.encoding))

40° N, 100° W)?

相关问题 更多 >

    热门问题