文字列: 判別


 数字の判別

stringモジュールにはdigits(='0123456789')が定義されているので、ある文字が数字かは、この文字列に含まれるかを判別します。

 

# 数字の判別
import string

def isdigit(a) :
	return string.find(string.digits, a) >= 0

print isdigit('2')
print isdigit('x')
 

 

 英字の判別

stringモジュールにはletters(大文字と小文字)、lowercase(小文字)、uppercase(大文字)が定義されているので、ある文字がこれらに含まれるかを判別します。

# 英字か判別
import string
def isalpha(a) :
	return string.find(string.letters, a) >= 0

print isalpha('a')
print isalpha('%') 

 

 16進数や8進数文字の判別

stringモジュールにはhexdigits(='0123456789abcdefABCDEF')が定義されているので、ある文字が16進数字かは、この文字列に含まれるかを判別します。8進数の場合は、octdigits(='01234567')を使用します。

 

 空白の判別

ある文字が空白(Tab, LF, CR, FFなどを含む)かを判別するときは、stringモジュールのwhitespaceにその文字が含まれるかを判別します。

 

 区切り文字の判別

区切り文字かの判別は、stringモジュールのpunctuationにその文字が含まれるかを判別します。

>>> print string.punctuation
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
>>>