簡體   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