例如,我有这样的文字:
This is my String
我想抢TS
,我只想抢大写。
您可以str.isupper
结合使用谓词方法filter
来过滤掉大写字符。
如果您希望结果是字符串,而不是序列,请使用''.join
.
>>> print(''.join(filter(str.isupper, "This is my String")))
TS
不确定您是否想以允许将每个字母保留在列表、元组等中的方式来获取它。但这里有一种使用列表表达式的方法:
import string
>>> [c for c in "This is my String" if c in string.ascii_uppercase]
['T', 'S']
此外,也许您想以不同的方式存储大写字符,或者立即对它们进行处理。for 循环可以很好地解决这个问题,例如:
for c in 'This is my String':
if c in string.ascii_uppercase: print(c) # Or do something else.
或者,以 KOS 的帖子为基础,如果您不介意列表,
>>> s = 'This is a test String'
>>> print(list(filter(str.isupper, s)))
['T', 'S']