python一道關於識別符號檢查的題

2021-08-03 14:50:58 字數 1376 閱讀 6203

識別符號合法性檢查,要求如下:

1.首字母以及後續字母要用字母、數字或者下劃線表示

2.如果輸入的字元為python關鍵字能判定輸入的字元是關鍵字並且輸出格式如下(檢查無誤並且是關鍵字!)

import string

import keyword

checkedchar = input('請輸入將要檢查的字串: ')

checkchar = string.ascii_letters + '_' + string.digits

specialchar = keyword.kwlist

if len(checkedchar) == 1:

if checkedchar not

in checkchar:

print('error!')

else:

print('noerror')

if len(checkedchar) > 1:

for i in range(len(specialchar) - 1):

if checkedchar == specialchar[i]:

print('檢查無誤並且是關鍵字!')

if checkedchar[0] not

in checkchar:

print('輸入格式錯誤並且第一位就錯了!')

else:

for otherchar in checkedchar[1:]:

if otherchar not

in checkchar:

print('輸入格式錯誤!')

break

else:

print('輸入格式沒有錯誤!')

注意python中不允許把關鍵字用來做識別符號。因此在這裡我們用keyword模組中的keyword.kwlist生成乙個包含所有關鍵字的列表,如果輸入有關鍵字可以用迴圈來判定。

for otherchar in checkedchar[1:]:
這一段**中要注意字串也是可迭代物件,因此這段**可以訪問chackedcahr中除了第乙個字母意外的任意乙個字母並在迴圈中進行判斷。輸出結果如下:

請輸入將要檢查的字串:

def檢查無誤並且是關鍵字!

輸入格式沒有錯誤!

請輸入將要檢查的字串: ***

輸入格式錯誤並且第一位就錯了!

請輸入將要檢查的字串:

1noerror

請輸入將要檢查的字串:

111輸入格式沒有錯誤!

請輸入將要檢查的字串:

1**輸入格式錯誤!

為了容易判別程式可能出現的錯誤,可以在列印錯誤結果時列印出不同的文字。

Python檢查識別符號是否合法

所謂的合法識別符號是 以字母,下劃線開頭 全部則是由字母,數字,下劃線組成。程式不難,注釋如下 import string 注 python2中的string成員letters在python3中改為了ascii letters alphas string.ascii letters nums str...

python 識別符號

在 python 裡,識別符號由字母 數字 下劃線組成。在 python 中,所有識別符號可以包括英文 數字以及下劃線 但不能以數字開頭。python 中的識別符號是區分大小寫的。以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不...

Python 識別符號

在 python 裡,識別符號由字母 數字 下劃線組成。在 python 中,所有識別符號可以包括英文 數字以及下劃線 但不能以數字開頭。python 中的識別符號是區分大小寫的。以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不...