Python: запускает любой альфа-символ

Как я могу использовать функцию startswith для соответствия любому альфа-символу [a-zA-Z]. Например, я хотел бы сделать это:

if line.startswith(ALPHA):
    Do Something

Ответы

Ответ 1

Если вы также хотите сопоставлять не-ASCII буквы, вы можете использовать str.isalpha:

if line and line[0].isalpha():

Ответ 2

Вы можете передать кортеж в startswiths() (в Python 2.5+), чтобы он соответствовал любому из его элементов:

import string
ALPHA = string.ascii_letters
if line.startswith(tuple(ALPHA)):
    pass

Разумеется, для этого простого случая можно было бы прочитать тест регулярного выражения или оператор in.

Ответ 3

Легким решением было бы использовать модуль regex python:

import re
if re.match("^[a-zA-Z]+.*", line):
   Do Something

Ответ 4

Это, пожалуй, самый эффективный метод:

if line != "" and line[0].isalpha():
    ...

Ответ 5

if line.startswith((chr(x) for x in range(ord('a'), ord('z')+1)+range(ord('A'), ord('Z')+1)):
    # do processsing
    pass

Ответ 6

если вам не нужны пробелы перед строкой,

if line and line.lstrip()[0].isalpha():