Ответ 1
Если вы также хотите сопоставлять не-ASCII буквы, вы можете использовать str.isalpha
:
if line and line[0].isalpha():
Как я могу использовать функцию startswith для соответствия любому альфа-символу [a-zA-Z]. Например, я хотел бы сделать это:
if line.startswith(ALPHA):
Do Something
Если вы также хотите сопоставлять не-ASCII буквы, вы можете использовать str.isalpha
:
if line and line[0].isalpha():
Вы можете передать кортеж в startswiths()
(в Python 2.5+), чтобы он соответствовал любому из его элементов:
import string
ALPHA = string.ascii_letters
if line.startswith(tuple(ALPHA)):
pass
Разумеется, для этого простого случая можно было бы прочитать тест регулярного выражения или оператор in
.
Легким решением было бы использовать модуль regex python:
import re
if re.match("^[a-zA-Z]+.*", line):
Do Something
Это, пожалуй, самый эффективный метод:
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
если вам не нужны пробелы перед строкой,
if line and line.lstrip()[0].isalpha():