Unicode 文字导致语法无效

发布于 2024-12-06 21:09:05 字数 232 浏览 0 评论 0原文

以下代码:

s = s.replace(u"&", u"&")

在 python 中导致错误:

SyntaxError: invalid syntax

" 修复问题之前删除 u's,但这应该按原样工作?我正在使用 Python 3.1

The following code:

s = s.replace(u"&", u"&")

is causing an error in python:

SyntaxError: invalid syntax

removing the u's before the " fixes the problem, but this should work as is? I'm using Python 3.1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

暖阳 2024-12-13 21:09:05

Python 3 中不再使用 u。默认情况下,字符串文字是 unicode。请参阅 Python 3.0 的新增功能

您不能再对 Unicode 文本使用 u"..." 文字。但是,您必须对二进制数据使用 b"..." 文字。

The u is no longer used in Python 3. String literals are unicode by default. See What's New in Python 3.0.

You can no longer use u"..." literals for Unicode text. However, you must use b"..." literals for binary data.

全部不再 2024-12-13 21:09:05

在 Python 3 上,字符串是 unicode。没有必要(正如您所发现的,您不能)在字符串文字之前放置 u 来指定 unicode。

相反,您必须在字节文字之前放置一个 b 来指定它不是 unicode。

On Python 3, strings are unicode. There is no need to (and as you've discovered, you can't) put a u before the string literal to designate unicode.

Instead, you have to put a b before a byte literal to designate that it isn't unicode.

仅此而已 2024-12-13 21:09:05

在 Python3.3+ 中,unicode 文字再次有效,请参阅 新增内容Python 3.3:

新语法功能:

生成器委托表达式的新收益。
str 对象再次接受 u'unicode' 语法。

In Python3.3+ unicode literal is valid again, see What’s New In Python 3.3:

New syntax features:

New yield from expression for generator delegation.
The u'unicode' syntax is accepted again for str objects.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文