Python's string type (str) wordt standaard geleverd met handige methodes voor het manipuleren van hoofdletters en kleine letters. Je kunt converteren tussen hoofdletters en kleine letters en het hoofdlettergebruik bepalen.
De volgende informatie wordt hier verstrekt.
- Omzetten tussen hoofdletters en kleine letters
- Basisgebruik
- Behandeling van tekens op ware grootte en op halve grootte
str.upper()
Zet alle letters om in hoofdlettersstr.lower()
Zet alle letters om in kleine lettersstr.capitalize()
Zet de eerste letter in hoofdletters en de rest in kleine letters.str.title()
Zet de eerste letter van een woord om in hoofdletters en de rest in kleine letters.str.swapcase()
Zet hoofdletters om in kleine letters en kleine letters in hoofdletters.
- Bepaal hoofdletters en kleine letters
str.isupper()
: Bepaal of alle letters hoofdletters zijnstr.islower()
: Bepaal of alle tekens kleine letters zijn.str.istitle()
: Bepaal of het een titel geval is.
- Tekenreeksen op een hoofdletterongevoelige manier vergelijken
- Omzetten tussen hoofdletters en kleine letters
- Basisgebruik
- Behandeling van tekens op ware grootte en op halve grootte
- str.upper(): zet alle letters om in hoofdletters
- str.lower(): alle tekens omzetten in kleine letters
- str.capitalize(): zet de eerste letter om in hoofdletters, de rest in kleine letters
- str.title(): zet de eerste letter van een woord om in hoofdletters en de rest in kleine letters
- str.swapcase(): hoofdletters omzetten in kleine letters, kleine letters in hoofdletters
- Bepaal hoofdletters en kleine letters
- Tekenreeksen op een hoofdletterongevoelige manier vergelijken
Omzetten tussen hoofdletters en kleine letters
Basisgebruik
Eerst zal ik het basisgebruik uitleggen. We zullen als voorbeeld de methode upper() gebruiken om alle letters in hoofdletters te zetten, maar hetzelfde geldt voor andere methoden.
Voor het gemak schrijven we “conversie”, maar in Python zijn objecten van het stringtype (str) niet wijzigbaar, dus de oorspronkelijke string (s_org in het voorbeeld) zelf wordt niet gewijzigd.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE print(s_org) # pYThon proGramminG laNguAge
Als u de geconverteerde string later wilt gebruiken, kunt u die als volgt in een nieuwe variabele opslaan.
s_new = s_org.upper() print(s_new) # PYTHON PROGRAMMING LANGUAGE
Het is ook mogelijk om de oorspronkelijke variabele te overschrijven.
s_org = s_org.upper() print(s_org) # PYTHON PROGRAMMING LANGUAGE
Behandeling van tekens op ware grootte en op halve grootte
Als een teken hoofdlettergevoelig is, zoals het alfabet, wordt het omgezet in zowel single-byte als double-byte tekens.
Tekens die niet hoofdlettergevoelig zijn, zoals cijfers en Chinese karakters, blijven ongewijzigd. Het voorbeeld is voor upper(), maar hetzelfde geldt voor andere methoden.
s_org = 'Pyhon Python 123' print(s_org.upper()) # PYHON PYTHON 123
str.upper(): zet alle letters om in hoofdletters
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE
str.lower(): alle tekens omzetten in kleine letters
s_org = 'pYThon proGramminG laNguAge' print(s_org.lower()) # python programming language
str.capitalize(): zet de eerste letter om in hoofdletters, de rest in kleine letters
s_org = 'pYThon proGramminG laNguAge' print(s_org.capitalize()) # Python programming language
str.title(): zet de eerste letter van een woord om in hoofdletters en de rest in kleine letters
Omzetting in een zogenaamde titelzaak.
s_org = 'pYThon proGramminG laNguAge' print(s_org.title()) # Python Programming Language
str.swapcase(): hoofdletters omzetten in kleine letters, kleine letters in hoofdletters
Verwissel hoofdletters en kleine letters.
s_org = 'pYThon proGramminG laNguAge' print(s_org.swapcase()) # PytHON PROgRAMMINg LAnGUaGE
Bepaal hoofdletters en kleine letters
In de volgende voorbeelden worden methoden rechtstreeks aangeroepen vanuit string literals zoals 'python', maar hetzelfde geldt als ze zijn opgeslagen in variabelen zoals in de vorige voorbeelden.
str.isupper(): bepaal of alle letters hoofdletters zijn
isupper() geeft true terug als het minstens één hoofdlettergevoelig teken bevat en ze allemaal hoofdletters zijn, en false anders.
print('PYTHON'.isupper()) # True print('Python'.isupper()) # False
Als het teken hoofdlettergevoelig is, worden zelfs dubbel-byte tekens beoordeeld.
print('PYTHON'.isupper()) # True
Als er ook maar één hoofdlettergevoelig teken in voorkomt, wordt het hoofdletterongevoelige teken genegeerd, maar als er geen hoofdlettergevoelig teken in voorkomt (alle tekens zijn hoofdletterongevoelig), is de beslissing vals.
print('PYTHON 123'.isupper()) # True print('123'.isupper()) # False
str.islower(): bepaal of alle tekens kleine letters zijn
islower() geeft true terug als het minstens één hoofdlettergevoelig teken bevat en ze allemaal kleine letters zijn, en false anders.
print('python'.islower()) # True print('Python'.islower()) # False
Als het teken hoofdlettergevoelig is, worden zelfs dubbel-byte tekens beoordeeld.
print('python'.islower()) # True
Als er ook maar één hoofdlettergevoelig teken in voorkomt, wordt het hoofdletterongevoelige teken genegeerd, maar als er geen hoofdlettergevoelig teken in voorkomt (alle tekens zijn hoofdletterongevoelig), is de beslissing vals.
print('python 123'.islower()) # True print('123'.islower()) # False
str.istitle(): Bepaal of de zaak een titelzaak is.
istitle() geeft true terug als de string een hoofdletter is (de eerste letter van het woord is hoofdletter, de rest is kleine letter), false anders.
print('Python Programming Language'.istitle()) # True print('PYTHON Programming Language'.istitle()) # False
Als het hoofdletterongevoelige tekens bevat, zal het onwaar zijn als de hoofdletterongevoelige tekens worden voorafgegaan door een kleine letter.
print('★Python Programming Language'.istitle()) # True print('Python★ Programming Language'.istitle()) # True print('Py★thon Programming Language'.istitle()) # False
Merk op dat er niet veel strings zijn zoals in het bovenstaande voorbeeld, maar het is realistisch om getallen in rangtelwoorden en andere gevallen op te nemen.
print('The 1st Team'.istitle()) # False print('The 1St Team'.istitle()) # True
Als er geen hoofdlettergevoelige tekens worden opgenomen (alle tekens zijn hoofdletterongevoelig), false.
print('123'.istitle()) # False
Tekenreeksen op een hoofdletterongevoelige manier vergelijken
Bij het vergelijken van strings worden verschillende hoofdletters en kleine letters niet als gelijkwaardig beschouwd.
s1 = 'python' s2 = 'PYTHON' print(s1 == s2) # False
Als u een hoofdletter-ongevoelige vergelijking wilt maken, kunt u upper() of lower() gebruiken om de twee om te zetten en te vergelijken.
print(s1.upper() == s2.upper()) # True print(s1.lower() == s2.lower()) # True print(s1.capitalize() == s2.capitalize()) # True print(s1.title() == s2.title()) # True