将两个参数传递给translate()

时间:2014-10-16 15:24:25

标签: python

如何将两个参数传递给translate()?我想删除数字和标点符号

str = str.translate(None, string.punctuation)

如何在不重复上述行并只更改一个单词的情况下传递string.digits?

1 个答案:

答案 0 :(得分:1)

您可以连接参数,因为它们都是字符串:

string.punctuation + string.digits

例如:

import string

s = "This is a string with 123456 []!@#$%^& stuff"
s = s.translate(None, string.digits + string.punctuation)
print s 

这将返回

This is a string with   stuff

如果您感到好奇,string.punctuation + string.digits会将此字符串传递给函数:

0123456789!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~