擅长:python、mysql、java
<p>有很多一行的方法可以找到字符串中的字符数:</p>
<pre><code>string = "Hello! My name is Barney!"
</code></pre>
<p>方法:</p>
<pre><code>string.count('!') == 2 #best way
</code></pre>
<p>或者</p>
<pre><code>len([x for x in string if x == '!']) == 2 #len of compresion with if
</code></pre>
<p>或者</p>
<pre><code>len(string)-len(string.replace('!','')) == 2 #len of string - len of string w/o character
</code></pre>
<p>或者</p>
<pre><code>string[string.find('!')+1:].find('!')>0 #find it, and find it again, at least twice
</code></pre>
<p><code>count</code>是最好的,但是我喜欢考虑其他的方法,因为我有时会发现这样的冗余代码/变量,这当然取决于您在做什么。假设您已经有了字符串的len和字符串的len,并且变量中的字符被替换了,出于其他原因,那么您可以简单地减去这些变量。可能不是这样,而是值得思考的问题。</p>