色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

python輪詢機制控制led實例

瀏覽:2日期:2022-07-26 15:46:23

我就廢話不多說了,大家還是直接看代碼吧!

# -*- coding:utf-8 -*- # File: ceshitianqi import urllib2import jsonimport timeimport datetimeimport serial import randomimport osimport sys APIKEY = ’ZPdLyl***=’ #改成你的APIKEYser=serial.Serial('/dev/ttyUSB2',9600,timeout=1) def read(key): ser.write(key) print('output:'+key) time.sleep(1) response = ser.readall() print(response) print(type(response)) return response def http_put(key): val = read(key) #獲取Arduino的數據 CurTime = datetime.datetime.now() url=’http://api.heclouds.com/devices/**1/datapoints’ #values={’datastreams’:[{'id':'temp','datapoints':[{'at':CurTime.isoformat(),'value':val}]}]} print(type(val)) if key== 'a' : values={’datastreams’:[{'id':'humidity','datapoints':[{'at':CurTime.isoformat(),'value':val}]}]} if key== 'b' : values={’datastreams’:[{'id':'temperature','datapoints':[{'at':CurTime.isoformat(),'value':val}]}]} jdata = json.dumps(values) # 對數據進行JSON格式化編碼 #打印json內容 print jdata request = urllib2.Request(url, jdata) request.add_header(’api-key’, APIKEY) request.get_method = lambda:’POST’ # 設置HTTP的訪問方式 request = urllib2.urlopen(request) return request.read() str = ('a','b')while True:for i in str: f = open(’1.txt’)e = f.read()if e == '1n':ser.write('c')if e == '0n':ser.write('d') f.close() resp = http_put(i) time.sleep(2)

輪詢1.txt

1則點亮

0則關閉

補充知識:python筆記(輪詢、長輪詢)

一、輪詢

views.py

from flask import Flask,render_template,request,jsonifyapp = Flask(__name__)USERS = { ’1’:{’name’:’貝貝’,’count’:1}, ’2’:{’name’:’小東北’,’count’:0}, ’3’:{’name’:’何偉明’,’count’:0},}@app.route(’/user/list’)def user_list(): import time return render_template(’user_list.html’,users=USERS)@app.route(’/vote’,methods=[’POST’])def vote(): uid = request.form.get(’uid’) USERS[uid][’count’] += 1 return '投票成功'@app.route(’/get/vote’,methods=[’GET’])def get_vote(): return jsonify(USERS)if __name__ == ’__main__’: app.run(threaded=True)

html

<!DOCTYPE html><html lang='zh-CN'><head> <meta charset='UTF-8'> <title>Title</title> <meta name='viewport' content='width=device-width, initial-scale=1'> <style> li{ cursor: pointer; } </style></head><body> <ul id='userList'> {% for key,val in users.items() %} <li uid='{{key}}'>{{val.name}} ({{val.count}})</li> {% endfor %} </ul> <script src='https://cdn.bootcss.com/jquery/3.3.0/jquery.min.js'></script> <script> $(function () { $(’#userList’).on(’dblclick’,’li’,function () {var uid = $(this).attr(’uid’);$.ajax({ url:’/vote’, type:’POST’, data:{uid:uid}, success:function (arg) { console.log(arg); }}) }); }); /* 獲取投票信息 */ function get_vote() { $.ajax({url:’/get/vote’,type:'GET',dataType:’JSON’,success:function (arg) { $(’#userList’).empty(); $.each(arg,function (k,v) { var li = document.createElement(’li’); li.setAttribute(’uid’,k); li.innerText = v.name + '(' + v.count + ’)’ ; $(’#userList’).append(li); })} }) } setInterval(get_vote,3000); </script></body></html>

二、長輪詢

views.py

from flask import Flask,render_template,request,jsonify,sessionimport uuidimport queueapp = Flask(__name__)app.secret_key = ’asdfasdfasd’USERS = { ’1’:{’name’:’貝貝’,’count’:1}, ’2’:{’name’:’小東北’,’count’:0}, ’3’:{’name’:’何偉明’,’count’:0},}QUEQUE_DICT = {}@app.route(’/user/list’)def user_list(): user_uuid = str(uuid.uuid4()) QUEQUE_DICT[user_uuid] = queue.Queue() session[’current_user_uuid’] = user_uuid return render_template(’user_list.html’,users=USERS)@app.route(’/vote’,methods=[’POST’])def vote(): uid = request.form.get(’uid’) USERS[uid][’count’] += 1 for q in QUEQUE_DICT.values(): q.put(USERS) return '投票成功'@app.route(’/get/vote’,methods=[’GET’])def get_vote(): user_uuid = session[’current_user_uuid’] q = QUEQUE_DICT[user_uuid] ret = {’status’:True,’data’:None} try: users = q.get(timeout=5) ret[’data’] = users except queue.Empty: ret[’status’] = False return jsonify(ret)if __name__ == ’__main__’: app.run(threaded=True)

html

<!DOCTYPE html><html lang='zh-CN'><head> <meta charset='UTF-8'> <title>Title</title> <meta name='viewport' content='width=device-width, initial-scale=1'> <style> li{ cursor: pointer; } </style></head><body> <ul id='userList'> {% for key,val in users.items() %} <li uid='{{key}}'>{{val.name}} ({{val.count}})</li> {% endfor %} </ul> <script src='https://cdn.bootcss.com/jquery/3.3.0/jquery.min.js'></script> <script> $(function () { $(’#userList’).on(’click’,’li’,function () {var uid = $(this).attr(’uid’);$.ajax({ url:’/vote’, type:’POST’, data:{uid:uid}, success:function (arg) { console.log(arg); }}) }); get_vote(); }); /* 獲取投票信息 */ function get_vote() { $.ajax({url:’/get/vote’,type:'GET',dataType:’JSON’,success:function (arg) { if(arg.status){ $(’#userList’).empty(); $.each(arg.data,function (k,v) {var li = document.createElement(’li’);li.setAttribute(’uid’,k);li.innerText = v.name + '(' + v.count + ’)’ ;$(’#userList’).append(li); }) } get_vote();} }) } </script></body></html>

以上這篇python輪詢機制控制led實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 萌白酱粉嫩jk福利视频在线观看 | 欧美精品片在线观看网站 | 亚洲成人三级 | 久久九九国产 | 美女视频在线观看黄 | 欧美资源在线观看 | 国产成人精品免费视频大全可播放的 | www.午夜 | 91黑丝国产线观看免费 | 亚洲欧美另类日本久久影院 | 波多野结衣中文在线播放 | 欧美成人高清在线视频大全 | 毛片免费高清免费 | 国产福利精品在线观看 | 美女黄色在线 | 亚洲毛片免费观看 | 亚洲视频中文字幕在线 | 女高中生被cao到哭视频 | 国产精品亚洲一区二区在线观看 | 欧美无玛 | 中文字幕一二区 | 亚洲精品久久9热 | 毛片日韩| 欧美色视频日本片高清在线观看 | 成人免费黄色网址 | 国产高清厕所盗摄视频 | 成年女人黄小视频 | 九九九九九九 | 欧美另类69xxxxx视频 | 99精品在线观看视频 | 亚洲一级毛片中文字幕 | 精品日韩在线 | 有码日韩 | 欧美日韩一区二区在线观看 | 日韩一区二区三区四区不卡 | 韩国美女一区二区 | 最新欧美精品一区二区三区 | 色三级大全高清视频在线观看 | 日韩在线1| 久久综合九九 | 女人张开双腿让男人 |