gpt4 book ai didi

python - 为什么 string.maketrans 在 Python 3.1 中不起作用?

转载 作者:IT老高 更新时间:2023-10-28 20:56:24 26 4
gpt4 key购买 nike

我是 Python 新手。

怎么会this在 Python 3.1 中不起作用?

from string import maketrans   # Required to call maketrans function.

intab = "aeiou"
outtab = "12345"
trantab = maketrans(intab, outtab)

str = "this is string example....wow!!!";
print str.translate(trantab);

当我执行上面的代码时,我得到了以下内容:

Traceback (most recent call last):
File "<pyshell#119>", line 1, in <module>
transtab = maketrans(intab, outtab)
File "/Library/Frameworks/Python.framework/Versions/3.1/lib/python3.1/string.py", line 60, in maketrans
raise TypeError("maketrans arguments must be bytes objects")
TypeError: maketrans arguments must be bytes objects

“必须是字节对象”是什么意思?如果可能的话,任何人都可以帮助发布 Python 3.1 的工作代码吗?

最佳答案

您不需要使用 bytes.maketrans(),而 str 会更简单并且不需要 'b' 前缀:

print("Swap vowels for numbers.".translate(str.maketrans('aeiou', '12345')))

关于python - 为什么 string.maketrans 在 Python 3.1 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3031045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com