にとどまります。だから、あなたのようなつぶやきを持っている場合:
"I love potatoes, buy some here http://potatoesarethebest.com"
そして、あなたは文字ない言葉を反復されている、ことを反復処理。何をする必要がデフォルトでスペースに分割されます、それにsplit
メソッドを呼び出すことによりリスト、とに文字列をを分割されます。
あなたの関数に意味 >>> s = "I love potatoes, buy some here http://potatoesarethebest.com"
>>> s.split()
['I', 'love', 'potatoes,', 'buy', 'some', 'here', 'http://potatoesarethebest.com']
、あなたが必要とするすべてのtweet
を反復処理するときは、単にsplit()
を呼び出します。また、count = count + 1
の代わりにcount += 1
を単に使用することもできます。
この方法では、word.endswith('http://')
も意味がありません。 endswith
は、マッチで終わる文字列の部分を探します。だからあなたは "thisishttp://"のようなものを探しています。それはあまり意味がありません。
def count_url(tweet):
count = 0
for word in tweet.split():
if word.startswith('http://'):
count += 1
return count
デモ:
>>> res = count_url("I love potatoes, buy some here http://potatoesarethebest.com")
>>> print(res)
1
この解決策の制限は、それはあなたのような文字列がある場合は動作しませんということです。
"this is awesome check here:http://www.stuff.com"
をあなたが認識する必要があり、他の制限があります。の。したがって、マッチングを実行するためにどのような基準を使用するのかを認識する必要があります。
どのような問題があるようですか? – idjaw
スパムメールであっても、何を入力しても常に0のままです。http:// – naruto321
あなたの質問を編集してください。あなたが提供しているサンプル入力を提供して、あなたの質問で何がうまくいかないかを説明してください。あなたは今、問題が何であるかを推測するように読者に求めています。それは役に立たない。 – idjaw