繁体   English   中英

在Python中反转str.translate

[英]Reversing str.translate in Python

如果要删除“ He123llo Wor456ld!”中的数字! 通过翻译,我可以

from string import digits str = "He123llo Wor456ld!" str = str.translate(None, digits) print str

>> Hello World!

我将如何反转以通过翻译获得123456

你可以用这样的东西

from string import digits
s = "He123llo Wor456ld!" 
s_ = s.translate(None, digits)
s = s.translate(None, s_)
print s

>>> 123456
from string import letters, punctuation, whitespace
str = "He123llo Wor456ld!"
str = str.translate(None, letters + punctuation + whitespace)
print str

>> 123456

仍然觉得“滥用”这样的翻译很奇怪,但是a ...它确实有效。

这是一种肮脏的方式,但是有效!

your_string = "He123llo Wor456ld!"
s=""
for digit in your_string:
    try:
        int(digit)
        s+=digit
    except:
        pass

print s

输出:

>>> 123456

暂无
暂无

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

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