アプリ版:「スタンプのみでお礼する」機能のリリースについて

質問です。
今ツイッターでpython使ってbotを作ってみようと思っています。
具体的に作りたいのは、あるアカウントがツイートするとリアルタイムで反応して一文をツイートするというものです。

プログラミング超初心者の僕なので、ネットで調べながら少しずつレベルアップしているのですが、
streaming apiを使おうと思って調べていたらこんなコードがでてきました。

import tweepy


CK = "ここにコンシューマーキーを入力"
CS = "ここにコンシューマーシークレットを入力"
AK = "ここにアクセストークンを入力"
AS = "ここにアクセスシークレットを入力"

word = "ここにRTするワードを入力"

auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AK, AS)
api = tweepy.API(auth)

print('実行中')

class MyStreamListener(tweepy.StreamListener):
def on_status(self, status):
if 'RT @' not in status.text[0:4]:
if 'http' not in status.text:
api.retweet(id=status.id)

myStreamListener = MyStreamListener()
myStream = tweepy.Stream(auth = api.auth, listener=myStreamListener)

myStream.filter(track=[word], is_async=True)

特定のワードを含むツイートに対してリツイートするコードです。これを応用したら自分が作りたいものができるのかなあと思って気になっています。
それでわからない部分がclassから下のあたりです。特に if 'RT @' not in status.text[0:4]: がわかりません。[0:4]ってなんですか?

どなたかわかりやすい説明宜しくお願い致します。

A 回答 (2件)

Pythonでプログラムを書こうとするなら、まず、Pythonの基本を勉強しましょう。

英語を読み書きしたいならまずアルファベットを覚えましょうというのと同じです。
text[0:4]は、textがおそらく文字列でしょうが、その0番目から3番目まで、つまり先頭4文字です。
    • good
    • 1
この回答へのお礼

助かりました

回答ありがとうございます。
pythonの基礎的な構文は一通り読んでみたのですが、複雑なコードの中で出てくるとなんだっけこれ?ってなってしまいました。それでも教えてくださって、pythonへの慣れが少しだけできました。ありがとうございました!

お礼日時:2022/08/26 01:52

>>> "RT @lasyguy: Full it care, cow was to become me is note"[0:4]


'RT @'

文字列の先頭4文字、と言うsubstringがリツイートを表す'RT @'で始まってるかどうか調べてる。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!