首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >string.translate函数中的“表”是什么意思?

string.translate函数中的“表”是什么意思?
EN

Stack Overflow用户
提问于 2014-01-10 15:57:44
回答 3查看 32.6K关注 0票数 25

查看string.translate函数,该函数表示:

删除deletechars中的所有字符(如果存在),然后使用表转换字符,表必须是一个256个字符的字符串,给出每个字符值的转换,并按其序号编制索引。如果table为None,则只执行字符删除步骤。

  • 表在这里是什么意思?它可以是包含映射的dict吗?
  • “必须是256个字符的字符串”是什么意思?
  • 可以手动创建表,也可以通过自定义函数创建表,而不是使用自定义函数

我尝试使用这个函数(尝试如下),只是想看看它是如何工作的,但没有成功地使用它。

代码语言:javascript
复制
>>> "abcabc".translate("abcabc",{ord("a"): "d", ord("c"): "x"})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: translation table must be 256 characters long
代码语言:javascript
复制
>>> "abcabc".translate({ord("a"): ord("d"), ord("c"): ord("x")}, "b")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: expected a character buffer object

代码语言:javascript
复制
>>> "abc".translate({"a": "d", "c": "x"}, ["b"])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: expected a character buffer object

这里我漏掉了什么?

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

https://stackoverflow.com/questions/21038891

复制
相关文章

相似问题

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