Python 从random.choice()生成的字符中排除特定字符
我正在尝试使用random.choice(string.ascii_小写)生成随机字符。我不想在random.choice()中包含所有小写字符。我想排除一些Python 从random.choice()生成的字符中排除特定字符,python,python-3.x,string,random,choice,Python,Python 3.x,String,Random,Choice,我正在尝试使用random.choice(string.ascii_小写)生成随机字符。我不想在random.choice()中包含所有小写字符。我想排除一些 import random import string random.choice(string.ascii_lowercase) 选择 “abcdefghijklmnopqrstuvwxyz” 排除 从随机函数生成的选项中选择“abd”,使用以下命令: import random import string unwanted_
import random
import string
random.choice(string.ascii_lowercase)
选择
“abcdefghijklmnopqrstuvwxyz”
排除
从随机函数生成的选项中选择“abd”,使用以下命令:
import random
import string
unwanted_chars = 'abd'
random.choice([s for s in string.ascii_lowercase if s not in unwanted_chars])
您可以通过将所有a、b、d字符替换为空字符串来删除它们:
import re
s = re.sub('[abd]', '', string.ascii_lowercase)
为什么不自己显式地写你想要的字母呢?用只包含你需要的字符的字符串替换
string.ascii_lowercase
?谢谢你的解决方案。这回答了我的问题