首页 > 解决方案 > 如何从字符串列表中随机选择不包括数字的标记?

问题描述

我知道在 python 中,为了从令牌中随机提取一个单词,我们可以这样做:

在:

import random 
s = 'hi there 3'
words = s.split() 
random.choice(words)

出去:

3

但是,如何选择下一个单词(在这种情况下hi)而不是数字?我想始终保证我拉的是一根绳子而不是一个数字?

标签: pythonpython-3.xrandom

解决方案


使用以下列表推导来提取非数字词:

words = [i for i in s.split() if i.isalpha()]
['hi', 'there']

所以你的代码看起来像

s = 'hi there 3'
words = [i for i in s.split() if i.isalpha()]
random.choice(words)

推荐阅读