828 Stimmen

Wie kann ich den ersten Buchstaben eines jeden Wortes in einer Zeichenfolge groß schreiben?

s = 'the brown fox'

...hier etwas tun...

s sein sollte:

'The Brown Fox'

Wie lässt sich das am einfachsten bewerkstelligen?

-1voto

Fouad Djebbar Punkte 420

Falls Sie sich verkleinern wollen

# Assuming you are opening a new file
with open(input_file) as file:
    lines = [x for x in reader(file) if x]

# for loop to parse the file by line
for line in lines:
    name = [x.strip().lower() for x in line if x]
    print(name) # Check the result

-2voto

user1475777 Punkte 82

Diese Antwort gefällt mir sehr gut:

Kopierfertige Version der Antwort von @jibberia:

def capitalize(line):
    return ' '.join([s[0].upper() + s[1:] for s in line.split(' ')])

Aber einige der von mir gesendeten Zeilen trennten einige leere ''-Zeichen ab, die beim Versuch, s[1:] zu machen, Fehler verursachten. Es gibt wahrscheinlich einen besseren Weg, dies zu tun, aber ich musste ein if len(s)>0 einfügen, wie in

return ' '.join([s[0].upper() + s[1:] for s in line.split(' ') if len(s)>0])

CodeJaeger.com

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.

Powered by:

X