@skyarthur
如下版本,測試可行。 但是還是不清楚為什么前面的thread會異常。
#!/usr/bin/env python
# coding:utf-8
from flask import Flask,request
import threading
from flask_mail import Mail, Message
app = Flask(__name__)
app.config['MAIL_SERVER'] = 'smtp.139.com'
app.config['MAIL_PORT'] = 465
app.config['MAIL_USE_SSL'] = True
app.config['MAIL_USERNAME'] = 'xw9527@139.com'
app.config['MAIL_PASSWORD'] = '******'
app.config['MAIL_DEFAULT_SENDER'] = 'xw9527@139.com'
mail = Mail(app)
@app.route('/sendMail',methods=['POST','GET'])
def index():
messages = request.values.to_dict()
title = messages['title']
content = messages['content']
tolist = messages['tolist']
tolist = str(tolist).split(',')
cc = messages['cc']
status = sendmail(title,content,tolist,cc)
return status
def send_async_email(app,msg):
with app.app_context():
mail.send(msg)
def sendmail(title,content,tolist,cc):
msg = Message(title , recipients=tolist,cc=cc)
msg.html = content
thr = threading.Thread(target=send_async_email, args=[app,msg])#創(chuàng)建線程
thr.start()
return thr
if __name__ == '__main__':
app.run(host='0.0.0.0',debug=True)import random
import pygal
class Die:
"""
一個骰子類
"""
def __init__(self, num_sides=6):
self.num_sides = num_sides
def roll(self):
return random.randint(1, self.num_sides)
die = Die()
result_list = []
# 擲1000次
for roll_num in range(1000):
result = die.roll()
result_list.append(result)
frequencies = []
# 范圍1~6,統(tǒng)計每個數(shù)字出現(xiàn)的次數(shù)
for value in range(1, die.num_sides + 1):
frequency = result_list.count(value)
frequencies.append(frequency)
# 條形圖
hist = pygal.Bar() # 默認的style就是白色背景
hist.title = 'Results of rolling one D6 1000 times'
# x軸坐標
hist.x_labels = [1, 2, 3, 4, 5, 6]
# x、y軸的描述
hist.x_title = 'Result'
hist.y_title = 'Frequency of Result'
# 添加數(shù)據(jù), 第一個參數(shù)是數(shù)據(jù)的標題
hist.add('D6', frequencies)
# 直接渲染到瀏覽器
hist.render_in_browser()
你是不是定義style了?
from pygal.style import DarkStyle
hist = pygal.Bar(style=DarkStyle) # 這個是你的黑色背景
hist.title = 'Results of rolling one D6 1000 times'
# x軸坐標
hist.x_labels = [1, 2, 3, 4, 5, 6]
# x、y軸的描述
hist.x_title = 'Result'
hist.y_title = 'Frequency of Result'
# 添加數(shù)據(jù), 第一個參數(shù)是數(shù)據(jù)的標題
hist.add('D6', frequencies)
# 直接渲染到瀏覽器
hist.render_in_browser()
實在不行把背景清了
from pygal.style import CleanStyle
hist = pygal.Bar(style=CleanStyle) # 清除背景下劃線是 ipython 中的特殊變量,一、二、三個連續(xù)下劃線分別保存最近的第一、二、三個結(jié)果。如
In [1]: 123
Out[1]: 123
In [2]: 'abc'
Out[2]: 'abc'
In [3]: _, __
Out[3]: ('abc', 123)應該是對方網(wǎng)站做的反爬蟲,改了圖片的地址
session = requests.Session()
session.headers = headers
def crawl(url):
html = session.get(url).content
pat1 = '(http://pic.qiantucdn.com/.+?0)"'
images_list = re.findall(pat1, html)
print images_list
crawl(url)
# ['http://pic.qiantucdn.com/58pic/28/29/87/73R58PICNSW.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/36/60/29J58PICKMe.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/2018/01/29/22/29466c2746dc7858651515e0654709bb.jpeg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/25/19/86R58PICmz5.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/22/98/07m58PICNQj.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/29/02/81e58PIC6U2.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/25/59/46m58PICjni.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/25/72/69u58PICFYr.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/34/76/67X58PIC3RF.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/22/00/01Z58PICWH2.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/34/91/89i58PICQEB.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/28/39/54N58PICp3h.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/36/11/43a58PICX9P.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/32/56/40r58PICxRD.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/23/69/02j58PICkyM.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/32/04/21V58PIC9Sc.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/29/02/28w58PIC8tf.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/22/14/96t58PICSw3.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/24/36/14X58PICdY9.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/28/58/97M58PICJgr.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/31/23/58658PICPrx.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/31/66/58R58PICvjW.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/02/20F58PICQD8.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/34/62/48u58PICtcA.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/32/48/21k58PIC56I.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/29/34/46658PICIFi.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/23/76758PICJGK.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/33/41/66P58PICKZi.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/34/73/20458PICEQw.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/23/21/57G58PIC3WB.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/33/41/24p58PICNmP.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/64/03c58PICQbX.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/36/72/93y58PICEid.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/99/82758PICN8v.JPG!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/18/76c58PIC4CB.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/34/97/62t58PIC3sT.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/69/82S58PICweA.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/35/09/87K58PICM2J.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/36/07/95J58PICjFn.jpg!/fw/300/clip/0x400a0a0', 'http://pic.qiantucdn.com/58pic/28/27/39/58558PICXAz.jpg!/fw/300/clip/0x400a0a0']這是中文位置,%2C就是逗號轉(zhuǎn)義 中國%2C內(nèi)蒙古自治區(qū)%2C鄂爾多斯市%2C準格爾旗
這是經(jīng)緯度,%2C就是逗號轉(zhuǎn)義,前面是緯度,后面是經(jīng)度 coord=39.8721%2C111.234
順便說一句,http通過get傳輸,參數(shù)都在請求頭上
簡單的聯(lián)想了一下,不知對錯,權(quán)當交流。
你現(xiàn)在的需求是一個頁面輸入數(shù)據(jù),一個頁面顯示數(shù)據(jù)。而你的結(jié)果是在多客戶端運行時,結(jié)果顯示得比較隨機。
每個進程的運行時間是和系統(tǒng)、電腦硬件有緊密的聯(lián)系的,既然你開啟了多進程,那么每個進程的完成時間有快有慢,所以,你得到的結(jié)果應該是隨機的。
建議你去掉 gunicon 試試。
后向引用為啥不能很好地解決呢?你可以試試這樣:
import re
s = "fsuihfwe20170101zjkdowuieru12017-01-01dasjk02017/01/012131"
reg = re.compile(r'(\d{4}([-/]?)\d{2}\2\d{2})', re.VERBOSE)
res = reg.findall(s)python是C語言實現(xiàn)的,盡管有很多標準庫是由python代碼實現(xiàn),但是涉及到底層支撐架構(gòu)的功能還是C代碼。一些IDE為了對這些進行友好代碼提示,會弄和底層一樣的訪問接口,而其實現(xiàn)直接寫 pass 略過。
另外,聽樓上 “此用戶無昵稱” 的意思是說看不到是因為源碼被加密保護,這種觀點是不對的,cpython的代碼是開源的。
關于凱撒密碼,我是這樣實現(xiàn)的:
if __name__ == "__main__":
p = input().upper()
o = []
for i in list(p):
if i is not " ":
c = ord(i)+3
if c > ord("Z"):
c -= 26
o.append(chr(c).lower())
else:
o.append(" ")
out = ''.join(o)
print(out)不知道你具體使用的是什么數(shù)據(jù)庫,我了解的mysql
mysql 5.6 以前的版本添加索引會阻塞讀寫,影響業(yè)務。mysql 5.6以后的版本添加索引具有新特性在線DDL,影響較小,只有開始和結(jié)束階段,其他時間不阻塞讀寫。
最好的方法是使用在線ddl工具 pt-osc ,但是一些限制,比如必須有主鍵,不能有觸發(fā)器等...
JWT的原理就是服務端根據(jù)secret生成token,當然secret只有服務器自己才知道是多少,也就讓token只能是由服務端簽發(fā);
對于復制集,唯一索引是保證絕對唯一的;對于分片集,只保證片內(nèi)唯一,不保證跨片的唯一,除非唯一索引正好是片鍵。
這些在文檔里有,可以參考。因為不知道你具體出現(xiàn)的是什么問題,所以也沒法分析了。
貌似可以看出一個數(shù)學的優(yōu)化問題?;谀愕?strong>離目標價格(5000元)越遠時,掛單資金越少,越近時越多的思路,可以進行建模:
起始商品價格為$begin$,最終價格為$end$,間隔區(qū)間為$delta$,則總共掛單次數(shù)$n$為:
$$ n = \frac{(begin-end)}{delta} + 1 $$
當$begin = 6000$, $end = 5000$, $delta = 100$時代入得$n=11$, 總共掛單11次
起始掛單資金$basic$, 然后逐單增加$extra$。但保證$costlimit$范圍內(nèi),
則全部花費$cost$為:
$$ cost = basic + extra * 0 + basic + extra*1 + ... + basic + extra * (n-1) = (n-1) basic + \frac{ extra * n(n-1)}{2}$$
假設你的花費上限為$costlimit$,那么應該有
$$ (n-1) basic + \frac{ extra * n(n-1)}{2} \leq costlimit $$
第n次買的商品數(shù)量為第n次的花費處以當前商品的價格,也就是
$$ \frac{(basic + extra * (n-1))}{(begin - delta* (n-1))}$$
總共有商品數(shù)量為
$$ \sum_{i=0}^{n-1} \frac{(basic + extra * i)}{(begin - delta* i)} $$
總共商品均價為
$$ avg\_price = \frac{cost}{amount} $$
也即是:
$$ avg\_price = \frac{(n-1) basic + \frac{ extra * n(n-1)}{2}}{\sum_{i=0}^{n-1} \frac{(basic + extra * i)}{(begin - delta* i)}} $$
你的目標就是在
$$ (n-1) basic + \frac{ extra * n(n-1)}{2} \leq costlimit $$
的前提下使得$avg\_price$和最終的價格$end$差距盡可能小,可以用兩個價格差作為標準,也可以用$\frac{end}{avg\_price}$ 比例的方式(也就是性價比)衡量。這里用性價比:
$$ f = argmax(\frac{ end}{ \frac{(n-1) basic + \frac{ extra * n(n-1)}{2}}{\sum_{i=0}^{n-1} \frac{(basic + extra * i)}{(begin - delta* i)}} } ) \leq 1 $$
當你的最終成交均價就是商品的價格時性價比為1,否則小于1.
你通過調(diào)整一下你的起始價格$basic$和遞增價格$extra$,應該能找到最佳的方案。
建議:
代碼貼的不是很全,沒法提供太多的信息,只能猜測:
index_list 的類型是 list,無法直接 unpack,可以試一下:for k, v in enumerate(index_list)
index_list 的類型是 list(tuple),tuple 的值無法確保都能夠 unpack,可以是一下 for item in index_list 然后在循環(huán)內(nèi)部進行 unpacksettings.py文件里面可以通過STATIC_URL配置靜態(tài)文件目錄,將完整的html文件放進該目錄,在頁面上可以直接訪問的。
把DEBUG的包 比如urllib3,根據(jù)這個改
logging.getLogger("urllib3").setLevel(logging.WARNING)
因為連接關閉之后,你沒有從 select.select() 的第一個參數(shù)中移除它。
一般而言,已斷開的 socket 在 select.select() 調(diào)用后,被移到 “可讀” 狀態(tài),而且調(diào)用 recv() 通常返回空串。
{{ article_form.content.content }}
已解決,此為序列化后結(jié)果
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產(chǎn)業(yè)為響應國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產(chǎn)業(yè)鏈。利用北京大學優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓領域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。