s = 'the brown fox'
...hier etwas tun...
s
sein sollte:
'The Brown Fox'
Wie lässt sich das am einfachsten bewerkstelligen?
s = 'the brown fox'
...hier etwas tun...
s
sein sollte:
'The Brown Fox'
Wie lässt sich das am einfachsten bewerkstelligen?
Vernachlässigen Sie nicht den Erhalt des Weißraums. Wenn Sie Folgendes verarbeiten wollen 'fred flinstone'
und Sie erhalten 'Fred Flinstone'
anstelle von 'Fred Flinstone'
haben Sie Ihren Weißraum beschädigt. Bei einigen der oben genannten Lösungen geht der Weißraum verloren. Hier ist eine Lösung, die für Python 2 und 3 geeignet ist und den Leerraum erhält.
def propercase(s):
return ''.join(map(''.capitalize, re.split(r'(\s+)', s)))
Eine schnelle Funktion funktionierte für Python 3
Python 3.6.9 (default, Nov 7 2019, 10:44:02)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> capitalizeFirtChar = lambda s: s[:1].upper() + s[1:]
>>> print(capitalizeFirtChar(' . !'))
. !
>>> print(capitalizeFirtChar(' ! .'))
! .
>>> print(capitalizeFirtChar('faith and Labour make Dreams come true.'))
Faith and Labour make Dreams come true.
Großschreibung von Zeichenfolgen mit uneinheitlichen Leerzeichen
Ich möchte den Punkt von @Amit Gupta zu den uneinheitlichen Räumen ergänzen:
Aus der ursprünglichen Frage geht hervor, dass wir jedes Wort in der Zeichenfolge groß schreiben möchten s = 'the brown fox'
. Was wäre, wenn die Zeichenfolge s = 'the brown fox'
mit uneinheitlichen Räumen.
def solve(s):
# If you want to maintain the spaces in the string, s = 'the brown fox'
# Use s.split(' ') instead of s.split().
# s.split() returns ['the', 'brown', 'fox']
# while s.split(' ') returns ['the', 'brown', '', '', '', '', '', 'fox']
capitalized_word_list = [word.capitalize() for word in s.split(' ')]
return ' '.join(capitalized_word_list)
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.