2017-02-22 74 views
0
def count_letters(let): 
    count = 0 
    for l in let: 
     if l != ['!',' ', '.', ',', '?']: 
      count += 1 
    return count 

這裏是我的函數,它應該計算除['!','','。',',','?'之外的符號數量] 。當我運行程序時,它仍在計算所有符號。我應該如何修改我的代碼中的「if」語句以正確運行程序?計數不帶「!,。,_」的符號數量

回答

0

使用if l != ['!',' ', '.', ',', '?']你實際上是比較l到列表。換句話說,您在問:如果l['!',' ', '.', ',', '?']不同,請輸入if聲明。

你想知道的是如果l不在['!',' ', '.', ',', '?']裏面。爲此,您可以使用:

if l not in ['!',' ', '.', ',', '?']: 
1

應該

if l not in ['!',' ', '.', ',', '?']: 

X不屬於S返回x s中的否定

檢查docs