s = ['my', 'name']
s = [item.capitalize() for item in s]
print s # print(s) in Python 3
Это напечатает:
['My', 'Name']
Ответ 3
Вы можете использовать 'my'.title(), который вернет 'My'.
Чтобы перебрать полный список, просто нарисуйте его следующим образом:
>>> map(lambda x: x.title(), s)
['My', 'Name']
Фактически, .title() делает все слова начинающимися с верхнего регистра. Если вы хотите строго ограничить его первой буквой, используйте capitalize(). (Это имеет значение, например, в "этом слове", которое изменяется на This Word или This Word)
Ответ 4
Это, вероятно, не имеет значения, но вы можете использовать это вместо строковых методов capitalize() или title(), потому что в дополнение к верхнему регистру первой буквы они также строят остальную часть строки (и это не):
s = map(lambda e: e[:1].upper() + e[1:] if e else '', s)
Ответ 5
Вы можете использовать
for i in range(len(s)):
s[i]=s[i].capitalize()
print s