在 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)
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)