652 Stimmen

Alphabetbereich in Python

Wie erstelle ich eine Liste von Buchstaben des Alphabets, ohne es manuell wie folgt zu tun?

['a', 'b', 'c', 'd', ..., 'z']

7voto

RicarHincapie Punkte 1687

Dies ist der einfachste Weg, den ich herausfinden kann:

#!/usr/bin/python3
for i in range(97, 123):
    print("{:c}".format(i), end='')

Also, 97 bis 122 sind die ASCII-Zahlen, die zu 'a' bis 'z' äquivalent sind. Beachten Sie die Kleinbuchstaben und die Notwendigkeit, 123 zu setzen, da es nicht eingeschlossen wird).

Stellen Sie in der Druckfunktion sicher, dass Sie das {:c} (Zeichen) -Format festlegen, und in diesem Fall möchten wir, dass es alles zusammen gedruckt wird, ohne am Ende sogar eine neue Zeile zuzulassen, also würde end='' die Arbeit erledigen.

Das Ergebnis ist folgendes: abcdefghijklmnopqrstuvwxyz

4voto

Lakshmikandan Punkte 3865

Drucken Sie die Groß- und Kleinbuchstaben in Python unter Verwendung einer integrierten Bereichsfunktion aus

def upperCaseAlphabets():
    print("Großbuchstaben")
    for i in range(65, 91):
        print(chr(i), end=" ")
    print()

def lowerCaseAlphabets():
    print("Kleinbuchstaben")
    for i in range(97, 123):
        print(chr(i), end=" ")

upperCaseAlphabets();
lowerCaseAlphabets();

2voto

Martin Tovmassian Punkte 930

Hier ist, wie ich meine benutzerdefinierte Funktion zur Generierung von Buchstabenzahlen basierend auf string.ascii_letters implementiert habe:

from string import ascii_letters

def range_alpha(start_letter, end_letter):
  return ascii_letters[
    ascii_letters.index(start_letter):ascii_letters.index(end_letter) + 1
  ]

print(range_alpha('a', 'z'))
print(range_alpha('A', 'Z'))
print(range_alpha('a', 'Z'))

0voto

Andj Punkte 428

Auch wenn dies eine alte Frage ist, werde ich eine Antwort geben, die ziemlich flexibel ist. Wenn PyICU installiert ist, kann dies leicht für diese Aufgabe genutzt werden:

from icu import UnicodeSet
lset = UnicodeSet('[a-z]')
print(list(lset))
# ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
ulset = UnicodeSet('[a-zA-Z]')
print(list(ulset))
# ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

Aber Sie können auch beliebige UnicodeSet-Muster auf die gleiche Weise verwenden:

uset2 = UnicodeSet('[[:Ll:]&[:Latin:]]')

Dieses Muster ist eine Schnittmenge zwischen zwei Sets. Die Schnittmenge zwischen allen Kleinbuchstaben und allen lateinischen Buchstaben, d.h. alle Kleinbuchstaben des lateinischen Alphabets.

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