繁体   English   中英

在python 2.7中翻译字符串

[英]Translate strings in python 2.7

我仍在学习python,很多基础知识对我来说仍然很复杂。 我刚开始使用codewars.com,它似乎是一个很棒的工具,可用来学习他们迄今为止设置的任何语言。 唯一的缺点是他们的python只有2.7,因此某些代码必须从3.0进行修改才能正常工作。 我现在正在处理一个问题,希望我将数字从键盘布局转换为电话布局(我想翻译是我要找的东西)。 所以我正在尝试将'7894561230'转换为'1234567890'。 也许这完全是错误的做法,但正如我所说,我仍在学习。 这是我的代码,但是没有用。 我认为这是因为我正在使用python 3。...有什么建议吗?

from string import maketrans
def computer_to_phone(numbers):
    dict = str.maketrans('7894561230', '1234567890')
    result = numbers.translate(dict)
    return result

编辑:这是我收到的错误消息

Traceback:
   in 
   in computer_to_phone
AttributeError: type object 'str' has no attribute 'maketrans'

我猜问题出在网上-

dict = str.maketrans('7894561230', '1234567890')

您正在尝试调用str.maketrans ,但是str类没有这种方法,在Python 2.x中,您应该使用要导入的string.maketrans()代替-

from string import maketrans
def computer_to_phone(numbers):
    dict = maketrans('7894561230', '1234567890')
    result = numbers.translate(dict)
    return result

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM