Saya tahu tentang islower
dan isupper
, tetapi dapatkah Anda memeriksa apakah karakter itu adalah huruf atau tidak? Sebagai contoh:
>>> s = 'abcdefg'
>>> s2 = '123abcd'
>>> s3 = 'abcDEFG'
>>> s[0].islower()
True
>>> s2[0].islower()
False
>>> s3[0].islower()
True
Adakah cara untuk menanyakan apakah itu karakter selain melakukan .islower()
atau .isupper()
?
character.isalnum() or character == "_"
.Jawaban:
Anda bisa menggunakan
str.isalpha()
.Sebagai contoh:
Keluaran:
sumber
>>> print [x.isalpha() for x in u'Español-한국어']
memberi Anda [True, True, True, True, True, True, True, False, True, True, True] seperti yang diharapkanKembalikan nilai benar jika semua karakter dalam string adalah alfabet dan setidaknya ada satu karakter, salah jika sebaliknya. Karakter abjad adalah karakter yang ditentukan dalam database karakter Unicode sebagai "Letter", yaitu karakter dengan properti kategori umum menjadi salah satu dari "Lm", "Lt", "Lu", "Ll", atau "Lo". Perhatikan bahwa ini berbeda dari properti "Abjad" yang ditentukan dalam Unicode Standard.
Di python2.x:
Di python3.x:
Kode ini berfungsi:
sumber
Saya menemukan cara yang baik untuk melakukan ini dengan menggunakan fungsi dan kode dasar. Ini adalah kode yang menerima string dan menghitung jumlah huruf kapital, huruf kecil dan juga 'lainnya'. Lainnya digolongkan sebagai spasi, tanda baca atau bahkan karakter Jepang dan Cina.
sumber
str.isalpha
jauh lebih mudah 'data = "abcdefg hi j 12345"
Keluaran:
Dengan menggunakan
str.isalpha()
Anda dapat memeriksa apakah itu surat.sumber
Ini bekerja:
sumber
Ini bekerja:
sumber