Łańcuch w Pythonie to sekwencja znaków. Na łańcuchach można wykonywać różne operacje przy użyciu zestawu wbudowanych metod. Metody logiczne typu string są podzbiorem tych wbudowanych metod używanych do sprawdzania, czy dany łańcuch spełnia określone reguły, czy nie.
W tym artykule dowiesz się, jak używać kilku różnych metod logicznych opartych na łańcuchach w Pythonie 3, aby stać się bardziej wydajnym programistą.
Jak sprawdzić, czy ciąg zawiera tylko znaki alfanumeryczne
Możesz sprawdzić, czy podany ciąg składa się tylko ze znaków alfanumerycznych za pomocą isalnum () metoda.
Ta metoda zwraca Prawdziwe jeśli wszystkie znaki są alfanumeryczne. Znaki alfanumeryczne to (A-Z), (a-z) i (0-9). Jeśli którykolwiek ze znaków w ciągu nie jest alfanumeryczny, ta metoda zwraca Fałszywe.
Przykłady:
str1 = "WelcomeToMUO"
# Ta metoda zwróci „True”, ponieważ wszystkie znaki są alfanumeryczne
checkstr1 = str1.isalnum ()
print (checkstr1)
str2 = "Witamy w MUO"
# Ta metoda zwróci „False”, ponieważ łańcuch ma 2 białe znaki, które nie są alfanumeryczne
checkstr2 = str2.isalnum ()
print (checkstr2)
str3 = "#WelcomeToMUO"
# Ta metoda zwróci „False”, ponieważ ciąg ma znak specjalny „#”, który nie jest alfanumeryczny
checkstr3 = str3.isalnum ()
print (checkstr3)
str4 = "274962472"
# Ta metoda zwróci „True”, ponieważ wszystkie znaki są alfanumeryczne
checkstr4 = str4.isalnum ()
print (checkstr4)
str5 = "Welcome2MUO"
# Ta metoda zwróci „True”, ponieważ wszystkie znaki są alfanumeryczne
checkstr5 = str5.isalnum ()
print (checkstr5)
Wynik:
Prawdziwe
Fałszywe
Fałszywe
Prawdziwe
Prawdziwe
Jak sprawdzić, czy ciąg składa się tylko ze znaków alfabetu
Możesz sprawdzić, czy podany ciąg składa się tylko ze znaków alfabetu za pomocą isalpha () metoda.
Ta metoda zwraca Prawdziwe jeśli wszystkie znaki są alfabetyczne. Znaki alfabetyczne to (A-Z) i (a-z). Jeśli którykolwiek ze znaków w ciągu nie jest alfabetyczny, ta metoda zwraca Fałszywe.
Przykłady:
str1 = "WelcomeToMUO"
# Ta metoda zwróci „True”, ponieważ wszystkie znaki są alfabetyczne
checkstr1 = str1.isalpha ()
print (checkstr1)
str2 = "Witamy w MUO"
# Ta metoda zwróci „False”, ponieważ łańcuch ma 2 białe znaki, które nie są alfabetyczne
checkstr2 = str2.isalpha ()
print (checkstr2)
str3 = "#WelcomeToMUO"
# Ta metoda zwróci „False”, ponieważ łańcuch ma specjalny znak „#”, który nie jest alfabetyczny
checkstr3 = str3.isalpha ()
print (checkstr3)
str4 = "274962472"
# Ta metoda zwróci „False”, ponieważ wszystkie znaki nie są alfabetyczne
checkstr4 = str4.isalpha ()
print (checkstr4)
str5 = "Welcome2MUO"
# Ta metoda zwróci „False”, ponieważ łańcuch zawiera cyfrę „2”, która nie jest alfabetyczna
checkstr5 = str5.isalpha ()
print (checkstr5)
Wynik:
Prawdziwe
Fałszywe
Fałszywe
Fałszywe
Fałszywe
Jak sprawdzić, czy wszystkie znaki w ciągu są liczbami dziesiętnymi, cyframi lub liczbami
Możesz sprawdzić, czy podany ciąg składa się tylko ze znaków dziesiętnych, cyfr lub znaków numerycznych za pomocą isdecimal (), isdigit (), i isnumeric () metody odpowiednio. Wszystkie trzy metody wydają się być podobne, ale plik Dokumentacja Pythona zauważa różnicę między tymi trzema metodami:
- isdecimal (): Znaki dziesiętne to takie, których można użyć do utworzenia liczb o podstawie 10, np. U + 0660, ZERO CYFROWY ARABSKIEJ. Formalnie znak dziesiętny to znak z kategorii ogólnej Unicode „Nd”.
- isdigit (): Cyfry obejmują znaki dziesiętne i cyfry, które wymagają specjalnej obsługi, na przykład cyfry indeksu górnego zgodności. Obejmuje to cyfry, których nie można użyć do utworzenia liczb o podstawie 10, takich jak liczby Kharosthi. Formalnie cyfra to znak, który ma wartość właściwości Numeric_Type = Digit lub Numeric_Type = Decimal.
- isnumeric (): Znaki numeryczne obejmują cyfry i wszystkie znaki, które mają właściwość liczbową Unicode, np. U + 2155, FRAKCJA WULGARSKA Piąta. Formalnie znaki numeryczne to te, które mają wartość właściwości Numeric_Type = Digit, Numeric_Type = Decimal lub Numeric_Type = Numeric.
Z definicji związek między tymi trzema metodami można przedstawić jako:
isdecimal () ⊆ isdigit () ⊆ isnumeric ()
Oznacza to, że jeśli ciąg jest ułamkiem dziesiętnym, będzie również zawierał cyfry i liczby.
Związane z: Jak tworzyć i używać krotek w Pythonie
Przykłady:
# Cyfr
str1 = "8734947"
print ("str1:")
print ("słowo1.isdecimal ():", słowo1.isdecimal ())
print ("str1.isdigit ():", str1.isdigit ())
print ("str1.isnumeric ():", str1.isnumeric ())
# Wartość ułamkowa
str2 = „½”
print ("str2:")
print ("str2.isdecimal ():", str2.isdecimal ())
print ("str2.isdigit ():", str2.isdigit ())
print ("str2.isnumeric ():", str2.isnumeric ())
# Wartości w indeksie górnym
str3 = „⁰¹²³”
print ("str3:")
print ("str3.isdecimal ():", str3.isdecimal ())
print ("str3.isdigit ():", str3.isdigit ())
print ("str3.isnumeric ():", str3.isnumeric ())
Wynik:
str1:
str1.isdecimal (): True
str1.isdigit (): True
str1.isnumeric (): True
str2:
str2.isdecimal (): False
str2.isdigit (): Fałsz
str2.isnumeric (): True
str3:
str3.isdecimal (): False
str3.isdigit (): True
str3.isnumeric (): True
Jak sprawdzić, czy ciąg jest prawidłowym identyfikatorem
Możesz sprawdzić, czy podany ciąg jest prawidłowym identyfikatorem za pomocą isidentifier () metoda. Ta metoda zwraca Prawdziwe jeśli ciąg jest prawidłowym identyfikatorem. W przeciwnym razie wraca Fałszywe.
Ciąg jest uważany za prawidłowy identyfikator, jeśli spełnia następujące warunki:
1. Zawiera tylko znaki alfanumeryczne i / lub podkreślenia.
2. Nie zaczyna się od znaku numerycznego.
3. Nie zawiera żadnych spacji.
Związane z: Jak używać pętli For w Pythonie
Przykłady:
str1 = "var1"
# Ta metoda zwróci „True”, ponieważ podany ciąg jest prawidłowym identyfikatorem
checkstr1 = str1.isidentifier ()
print (checkstr1)
str2 = "var 1"
# Ta metoda zwróci „False”, ponieważ ciąg zawiera białe znaki
checkstr2 = str2.isidentifier ()
print (checkstr2)
str3 = "var1 #"
# Ta metoda zwróci „False”, ponieważ ciąg ma znak specjalny „#”
checkstr3 = str3.isidentifier ()
print (checkstr3)
str4 = "_var1_"
# Ta metoda zwróci „True”, ponieważ podany ciąg jest prawidłowym identyfikatorem
checkstr4 = str4.isidentifier ()
print (checkstr4)
str5 = "1var"
# Ta metoda zwróci „False”, ponieważ ciąg znaków zaczyna się od cyfry „1”
checkstr5 = str5.isidentifier ()
print (checkstr5)
Wynik:
Prawdziwe
Fałszywe
Fałszywe
Prawdziwe
Fałszywe
Jak sprawdzić, czy wszystkie znaki w ciągu są wielkimi czy małymi literami
Możesz sprawdzić, czy podany ciąg składa się tylko z wielkich liter za pomocą isupper () metoda.
Podobnie możesz sprawdzić, czy podany ciąg składa się tylko z małych liter za pomocą islower () metoda. Metoda isupper () zwraca Prawdziwe jeśli wszystkie znaki w ciągu są wielkimi literami i metoda islower () zwraca Prawdziwe jeśli wszystkie znaki ciągu są małymi literami.
Przykłady:
str1 = "WYKONAJ"
print ("str1:")
print ("str1.isupper ():", str1.isupper ())
print ("str1.islower ():", str1.islower ())
str2 = "makeuseof"
print ("str2:")
print ("str2.isupper ():", str2.isupper ())
print ("str2.islower ():", str2.islower ())
str3 = "MakeUseOf"
print ("str3:")
print ("str3.isupper ():", str3.isupper ())
print ("str3.islower ():", str3.islower ())
Wynik:
str1:
str1.isupper (): True
str1.islower (): Fałsz
str2:
str2.isupper (): Fałsz
str2.islower (): True
str3:
str3.isupper (): Fałsz
str3.islower (): Fałsz
Jak sprawdzić, czy wszystkie znaki w ciągu są odstępami
Możesz sprawdzić, czy podany ciąg składa się tylko z białych znaków za pomocą isspace () metoda.
Ta metoda zwraca Prawdziwe jeśli wszystkie znaki są białymi spacjami. Jeśli którykolwiek ze znaków w ciągu nie jest białą spacją, ta metoda zwraca Fałszywe.
Przykłady:
str1 = „”
# Ta metoda zwróci „True”, ponieważ podany ciąg zawiera tylko białe znaki
checkstr1 = str1.isspace ()
print (checkstr1)
str2 = "MUO"
# Ta metoda zwróci „False”, ponieważ ciąg zawiera znaki inne niż białe znaki
checkstr2 = str2.isspace ()
print (checkstr2)
str3 = "-"
# Ta metoda zwróci „False”, ponieważ ciąg zawiera znak inny niż biały znak
checkstr3 = str3.isspace ()
print (checkstr3)
Wynik:
Prawdziwe
Fałszywe
Fałszywe
Jak sprawdzić, czy tekst jest zgodny z regułami stylu tytułu
Możesz sprawdzić, czy podany tekst jest zgodny z regułami tytułu, używając istitle () metoda.
Mówi się, że tekst jest zgodny z zasadami tytułu, jeśli wszystkie słowa w tekście zaczynają się od dużej litery, a pozostałe słowa są małymi literami. Jeśli podany tekst jest zgodny z tą regułą, metoda istitle () zwraca Prawdziwew przeciwnym razie wraca Fałszywe.
Przykłady:
str1 = "Witamy w Muo"
# Ta metoda zwróci „True”, ponieważ podany ciąg jest zgodny z regułami tytułu
checkstr1 = str1.istitle ()
print (checkstr1)
str2 = "Witamy w Muo"
# Ta metoda zwróci „False”, ponieważ drugie słowo („do”) nie zaczyna się od dużej litery
checkstr2 = str2.istitle ()
print (checkstr2)
str3 = "witaj w muo"
# Ta metoda zwróci „False”, ponieważ wszystkie słowa zaczynają się od małej litery
checkstr3 = str3.istitle ()
print (checkstr3)
Wynik:
Prawdziwe
Fałszywe
Fałszywe
Uczyń programowanie zabawnym za pomocą ciągów znaków
Ciągi znaków są bardzo przydatne podczas przekazywania informacji z programu do jego użytkowników. Jednak użycie walidacji logicznej nie jest jedynym sposobem na zabawę z ciągami znaków Pythona.
Możesz przekształcić nudny tekst w interesujący tekst, manipulując ciągami znaków. Bądź kreatywny i baw się programowaniem!
Używanie ciągów znaków i manipulowanie nimi w Pythonie może wydawać się trudne, ale jest to zwodniczo proste.
Czytaj dalej
- Programowanie
- Pyton
- Samouczki kodowania
Yuvraj jest studentem informatyki na Uniwersytecie w Delhi w Indiach. Jest pasjonatem tworzenia stron internetowych Full Stack. Kiedy nie pisze, zgłębia głębię różnych technologii.
Zapisz się do naszego newslettera
Dołącz do naszego biuletynu, aby otrzymywać wskazówki techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w wiadomości e-mail, którą właśnie wysłaliśmy.