2016-11-21 18 views
0

文字列で項目のリストが繰り返される回数をどのように数えることができますか。たとえば、文字列を検索して、このリストが文字列で繰り返された回数を確認するにはどうすればよいですか?文字列内の項目のリストの出現を数えますか?

list = ('+','-','*','/') 
string = "33+33-33*33/33" 

答えて

1

まず、listのような名前を使用していない、それはマスク[参照:Built-in Methods]名前listを内蔵しており、それはいくつかの微妙なバグにつながることができます。

その後、これを行う方法があります。重要なのは、オブジェクトのような文字列が、のメソッド [参照:String Methods]のようなものに対応していることです。これらの方法の1つはsubが文字列に含まれる回数をカウントするstr.count(sub)です。

したがって、lst内のすべての要素のカウントを作成するforループを使用することによって行うことができる:それはprintで印刷できるように

lst = ('+','-','*','/') 
string = "33+33-33*33/33" 
for i in lst: 
    print("Item ", i, " occured", str(string.count(i)), "times") 

str(string.count(i))strオブジェクトにstring.countの整数の結果を変換します。

これはアウト出力します

Item + occured 1 times 
Item - occured 1 times 
Item * occured 1 times 
Item/occured 1 times 

をPythonのに慣れてきたら、結果のリストを作成し、printにそれらを供給するために理解を使用することができます。同様のを印刷し

print(*["Item {} occured {} times".format(x, string.count(x)) for x in lst], sep='\n') 

結果。

最後に、PythonのドキュメントのWebサイトでread the Tutorialが利用可能であることを確認してください。これは、あなたが言語を知るのに役立ちます。

+0

合計時間の表示方法を追加できますか?また、有益であると答えてくれてありがとう –

関連する問題