在 Python 中的调用中传递变量以平分 arduino 操作

Pass a variable on a call in Python to bisect arduino action

Python写作完全菜鸟,所以请客气。 我已经尝试了几个小时来解决这个问题,但我做不到。 我在 Python 中所做的唯一工作要简单得多,并且不涉及库。

我正在使用 this Python 代码在我的 Yún 上实现 Arduino 动作。它基于 Tweepy 库。 我的主要目标是插入三个主题标签并在 Arduino 中执行 3 项不同的操作,具体取决于推文中发布的主题标签。 所以,一切正常,只要有任何主题标签被推到推特上,我的 LED 就会闪烁。 我现在想做的是在 Arduino 上对分代码 运行。

这是我的 streaming.py 代码的一部分:

search_string = '#jekotest'

class StdOutListener(StreamListener):

"""
A listener handles tweets are the received from the stream.
This is a basic listener that just prints received tweets to stdout.
"""

def on_data(self, data):
    # I call an external script because the Arduino's Bridge library
    # confilcts with the tweepy library
    call(["/usr/bin/python", script_path + "/go.py"])
    return True

def on_error(self, status):
    # TODO: Put some error handling here
    return False

if __name__ == '__main__':
    l = StdOutListener()
    auth = OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_token, access_token_secret)

    stream = Stream(auth, l)
    stream.filter(track=[search_string])

这是go.py:

import sys
sys.path.insert(0, '/usr/lib/python2.7/bridge/')

from bridgeclient import BridgeClient as bridgeclient

value = bridgeclient()
value.put('go','1')

我知道 stream.body 是一个包含 {'track': '#jekotest'} 的字典,所以: 我怎么能做一个

if '#jekotest' in stream.body:
value.put('go', 1)
elif: 
'#anotherhashtag' in stream.body
value.put('go', 2)

等等?

非常感谢

最后,我设法将两个文件放在一起并使其像这样工作:

hashtag = status.entities['hashtags']
    for value in hashtag:
        if translateHashtag1 in value['text']:
            goBridge.put('go', 1)