Comment puis-je utiliser la fonction startswith pour faire correspondre n'importe quel caractère alpha [a-zA-Z]. Par exemple, j'aimerais faire ceci:
if line.startswith(ALPHA):
Do Something
Si vous souhaitez également faire correspondre des lettres non-ASCII, vous pouvez effectuer les opérations suivantes:
if line and line[0].isalpha():
Vous pouvez transmettre un tuple à startswiths()
(en Python 2.5+) pour qu'il corresponde à l'un de ses éléments:
import string
ALPHA = string.ascii_letters
if line.startswith(Tuple(ALPHA)):
pass
Bien entendu, pour ce cas simple, un test de regex ou l'opérateur in
serait plus lisible.
Une solution simple consiste à utiliser le module Python regex:
import re
if re.match("^[a-zA-Z]+.*", line):
Do Something
C'est probablement la méthode la plus efficace:
if line != "" and line[0].isalpha():
...
if line.startswith((chr(x) for x in range(ord('a'), ord('z')+1)+range(ord('A'), ord('Z')+1)):
# do processsing
pass