首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Python3x的中的UTF-8字符串?

使用Python3x的中的UTF-8字符串?
EN

Stack Overflow用户
提问于 2020-06-04 14:15:20
回答 1查看 245关注 0票数 0

我正在使用Pub/sub、Cloud函数和数据存储。用户通过Pub/Sub主题以JSON格式发送数据,然后云函数将接收这个json有效负载。有些数据需要进行一些处理,然后数据存储在Datastore中。

现在的问题是,有时一些其他字符也接收到JSON负载字符串中的云函数。

代码语言:javascript
复制
{'Data': 'ßTest'} #Already converted into UTF-8 by the user

所以当我这么做的时候..。

代码语言:javascript
复制
data = pubsub_message['Data']
print(data) # OUTPUT :=> 'ßTest'
print(type(data)) # OUTPUT :=> #'str'
data.decode('utf-8')

decode给出了str没有解码的异常,这是有意义的,因为它的类型是'str‘。

现在我要做的是把它编码成utf-8。

代码语言:javascript
复制
d=data.encode('utf-8')

它将d返回为‘字节’类型。然后我把它储存在Datastore。现在,当我签入数据存储时,它是一个支离破碎的字符串,类型为Blob。

现在,我的问题-- is.Can --我把它存储在数据存储中,而不是在'utf-8‘中编码它?或者在DATASTORE中用BLOB格式编码'utf-8‘是可以的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-05 09:33:26

正如最佳实践所说:

类型字符串的属性始终使用UTF-8字符。字符串类型属性中的非UTF-8字符可能会干扰查询.如果需要使用非UTF-8字符保存数据,请使用字节字符串。

这意味着您必须将数据存储在UTF-8或字节字符串中。

对于水滴,您还可以将数据存储为字节。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62196879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档