python 查找字符串中字母的個數


 2017.6.17 更新:好像知道錯在哪里了。以第一個為例,輸入應該是“AHHaaBBa”,因為直接輸入AHHaaBBa時,系統不知到這是一個變量還是字符串,所以必須輸入的時候申明定義。既然這樣的話,那我在str=input()的時候將輸入定義成字符串格式例如

str=str(input())這樣呢?結果還是不可以。。。最后,最好不要把變量名和函數名取得一樣,就像我這里的str就很不合規范

%%%%% 分隔符

試了好幾種方法全都報錯,先貼出來,反正自己是覺得沒毛病

(1)首先看不懂if_name_=="_main_"這句話的定義,反正網上老師要求加的,運行首先提示

NameError: name '_name_' is not defined

把這句話刪掉后,還是出錯,提示

%%%% 分隔符 上面那個應該是:if__name__=="__main__" ,少寫了一下下划線,表達的意思是程序的入口

AHHaaBBa

Traceback (most recent call last):   File "D:/Python27/yy/excer_3.py", line 11, in <module>    

str=input()   File "<string>", line 1, in <module>

NameError: name 'AHHaaBBa' is not defined

def countchar(str):
    wordlist=[chr(i) for i in range(97,23)]
    str=str.lower()
    result=[]
    for i in range(len(str)):
        x=str[i]
        if x in wordlist:
            y=wordlist.index(x)
            result[y]=result[y]+1
    return result
if _name_=="_main_":
    str=input()
print(countchar(str))

 (2)用了內置函數

def countchar(str):
    wordlist=[chr(i) for i in range(97,23)]
    str=str.lower()
    result=[]
    for index,value in enumerate(wordlist):
        a=str.count(value)
        result[index]=a
    return result
# if _name_=="_main_":
    str=input()
    print(countchar(str))

 仍舊出錯,Nameerror是什么問題?幾次同時出現

>>> ===================== RESTART: D:/Python27/yy/excer_3.py =====================

>>> aaAAbDC

Traceback (most recent call last):   File "<pyshell#1>", line 1, in <module>  

   aaAAbDC

NameError: name 'aaAAbDC' is not defined

>>>

(3)當然還有這個,最后這個可以成功運行,但是提交到系統里又不行了,幸好我不想買他們的證書。雖然程序運行出來了,但是我還是不知道上面兩個代碼哪里錯了

def countchar(str):
    s=str.lower()
    result=[]
    for index,value in enumerate([chr(i) for i in range(97,123)]):
        result.append(s.count(value))
    return result
str=raw_input()
print countchar(str)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM