Python中如何計算字符串里面某一個字符出現的次數?


一個突發奇想,想解決一個學習中的行業痛點,讓我又再度拾起了Python編程語言的學習。

 

剛學兩天,今天遇到一個題,該題難度不高,但有一點關鍵點在網上找不到,網上也沒有相關的答案,於是我只好千辛萬苦地去CSDN、腳本之家上面尋找教程,看文檔,最后成功解決了。

題目內容:接受一個由字母和數字組成的字符串,和一個字符,然后輸出輸入的字符串中含有該字符的個數。不區分大小寫。

可以使用以下語句實現字符串s的輸入:s=str(input())

輸入格式:輸入一個由字母和數字組成的字符串,和一個字符,以空格隔開。

輸出格式:輸出輸入的字符串中含有該字符的個數。

輸入樣例:a1234bcdef a

輸出樣例:1

時間限制:500ms內存限制:32000kb

難點在於字符串切片后得到的是一個序列,怎么取用一個序列中的指定元素呢?

其實這是因為對切片 split()這個語法沒有掌握好。

split() 方法語法:

str.split(str="", num=string.count(str)).

其中的參數

str -- 分隔符,默認為所有的空字符,包括空格、換行(\n)、制表符(\t)等。

num -- 分割次數。默認為 -1, 即分隔所有。

其實在后面加上[]就可以確定要哪個元素了。

因此正確解決方法如此

s=str(input())  #輸入要字符,由數字和字母組成的,中間由空格隔開

a= s.split(" ")[1]  #切片后得到一個序列,獲得空格左邊那個元素

b= s.split(" ")[0]  #切片后獲得的序列里面得到空格右邊的元素

c=b.count(a,)  #數以下右邊那個元素在左邊的元素中由多少個,從哪開始數,數多少空缺

print(c)  #輸出個數

這樣給出abc變量會容易理解和記憶,但是顯得復雜因此也可以這樣

s=str(input())

print(s.split(" ")[0].count(s.split(" ")[1],))

也許還有更簡單的方法和命令,只是我還不知道。


生命不息,折騰不止!

 
 


免責聲明!

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



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