У меня есть список, содержащий несколько строк. Я хочу использовать первую букву каждой строки в списке. Как это сделать, используя методы списка? Или я должен использовать регулярное выражение здесь?Заполните первую букву в каждой строке в списке
0
A
ответ
1
Просто позвоните capitalize
на каждой строке. Обратите внимание, что нижний регистр остальных букв
l = ['This', 'is', 'a', 'list']
print [x.capitalize() for x in l]
['This', 'Is', 'A', 'List']
Если вам нужно сохранить случай на другие письма, сделать это вместо того, чтобы
l = ['This', 'is', 'a', 'list', 'BOMBAST']
print [x[0].upper() + x[1:] for x in l]
['This', 'Is', 'A', 'List', 'BOMBAST']
0
x=['a', 'test','string']
print [a.title() for a in x]
['A', 'Test', 'String']
С regex
помечено слишком , вы можете использовать примерно следующее:
>>> import re
>>> x=['a', 'test','string']
>>> def repl_func(m):
return m.group(1) + m.group(2).upper()
>>> [re.sub("(^|\s)(\S)", repl_func, a) for a in x]
['A', 'Test', 'String']