使用Pythontruffle構(gòu)建完整的智能合約使用solidity的truffle框架開(kāi)發(fā)智能合約,使用Python調(diào)用合約。1.合約編寫、編譯和部署gitclonehttps://github.com/jamess010/AIonChaincd./AIonChain&&cd./master/smartcontracttruffledevelop(port:9545)compilemigrate(--reset)2.使用python調(diào)用安裝web3.py
系統(tǒng) 2019-09-27 17:52:56 1752
Python命令行之旅:使用argparse實(shí)現(xiàn)git命令作者:HelloGitHub-ProdesireHelloGitHub的《講解開(kāi)源項(xiàng)目》系列,項(xiàng)目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介紹argparse的文章中,我們?nèi)媪私饬薬rgparse的能力,相信不少小伙伴們都已經(jīng)摩拳擦掌,想要打造一個(gè)屬于自己的命令行工具。本文將以我們?nèi)粘9ぷ髦凶畛R?jiàn)的git命令為例,講解如何使用arg
系統(tǒng) 2019-09-27 17:52:36 1752
mkvirtualenv-ppython3環(huán)境名創(chuàng)建虛擬環(huán)境rmvirtualenv環(huán)境名刪除環(huán)境進(jìn)入虛擬環(huán)境workon環(huán)境名(workon+tab可以出來(lái)所有環(huán)境)查看環(huán)境下所有包pip3list查看環(huán)境下安裝的包(不包括原生python包)pip3freeze依賴包文件生成pip3freeze>requirements.txt環(huán)境導(dǎo)入依賴包pip3install-rrequirements.txt普通安裝pip3install包名這是linux下的指
系統(tǒng) 2019-09-27 17:52:34 1752
簡(jiǎn)單使用最開(kāi)始,我們用最短的代碼體驗(yàn)一下logging的基本功能。importlogginglogger=logging.getLogger()logging.basicConfig()logger.setLevel('DEBUG')logger.debug('logsomething')#輸出out>>DEBG:root:logsomething第一步,通過(guò)logging.getLogger函數(shù),獲取一個(gè)loger對(duì)象,但這個(gè)對(duì)象暫時(shí)是無(wú)法使用的。第二步
系統(tǒng) 2019-09-27 17:52:26 1752
建造者模式,也是一種創(chuàng)建新對(duì)象的設(shè)計(jì)方法,和C++中的虛函數(shù)很類似,但是用到了python自身的虛基類ABCMeta。1.應(yīng)用場(chǎng)景:某個(gè)類中的函數(shù)較多,且實(shí)現(xiàn)比較復(fù)雜,很多時(shí)候需要繼承的子類重載或者重新定義邏輯;2.背景基礎(chǔ):由于用到python中虛函數(shù),需要了解abc模塊中的ABCMeta和python中類創(chuàng)建對(duì)象時(shí)的__metaclass__屬性含義。一般地,在某個(gè)類中如果定義__metaclass__=something時(shí),簡(jiǎn)單地說(shuō)是,創(chuàng)建對(duì)象時(shí),會(huì)
系統(tǒng) 2019-09-27 17:52:26 1752
之前用了谷歌的selenium模塊,為了練習(xí)一下所以寫了這個(gè)(沒(méi)錯(cuò)才不是別的理由!)代碼里涉及到了各種復(fù)雜的情況,包括要找的div在別的iframe中的處理方式,頂部導(dǎo)航欄的定位方式等等。綜合性很強(qiáng)下面是代碼fromseleniumimportwebdriverimporttimefromfake_useragentimportUserAgentopt=webdriver.ChromeOptions()#opt.add_argument('--headle
系統(tǒng) 2019-09-27 17:52:25 1752
Python語(yǔ)言與Perl,C和Java等語(yǔ)言有許多相似之處,也有一定的差異性,以下是Python語(yǔ)言獲取文件后綴名和文件名的方法:#Python獲取文件后綴名的方法importos.pathdeffile_extension(path):returnos.path.splitext(path)[1]printfile_extension('/py/a.py')輸出:.py#Python獲取目錄和文件名importos.pathdeffile_extens
系統(tǒng) 2019-09-27 17:52:22 1752
yield的功能類似于return,但是不同之處在于它返回的是生成器。生成器生成器是通過(guò)一個(gè)或多個(gè)yield表達(dá)式構(gòu)成的函數(shù),每一個(gè)生成器都是一個(gè)迭代器(但是迭代器不一定是生成器)。如果一個(gè)函數(shù)包含yield關(guān)鍵字,這個(gè)函數(shù)就會(huì)變?yōu)橐粋€(gè)生成器。生成器并不會(huì)一次返回所有結(jié)果,而是每次遇到y(tǒng)ield關(guān)鍵字后返回相應(yīng)結(jié)果,并保留函數(shù)當(dāng)前的運(yùn)行狀態(tài),等待下一次的調(diào)用。由于生成器也是一個(gè)迭代器,那么它就應(yīng)該支持next方法來(lái)獲取下一個(gè)值。基本操作#通過(guò)`yield`
系統(tǒng) 2019-09-27 17:52:18 1752
原型模式,也是用于創(chuàng)建對(duì)象時(shí)的一種設(shè)計(jì)方法。主要應(yīng)用場(chǎng)景是:每次初始化某個(gè)對(duì)象時(shí),需要傳遞大量的參數(shù),很不方便,此時(shí),可以使用原型模式,在已經(jīng)創(chuàng)建并初始化的對(duì)象基礎(chǔ)上,可以快速而又方便創(chuàng)建新的不同對(duì)象。主要原理:使用深拷貝,復(fù)制一個(gè)已創(chuàng)建的對(duì)象,然后使用__dict__.update()方法更新已創(chuàng)建對(duì)象中的參數(shù)值方式創(chuàng)建新對(duì)象。背景知識(shí):在python中的類中,__dict__是一個(gè)字典,保存了所有該類中的變量,函數(shù)等參數(shù)。#coding=utf-8im
系統(tǒng) 2019-09-27 17:52:15 1752
Sklearn簡(jiǎn)介Scikit-learn(sklearn)是機(jī)器學(xué)習(xí)中常用的第三方模塊,對(duì)常用的機(jī)器學(xué)習(xí)方法進(jìn)行了封裝,包括回歸(Regression)、降維(DimensionalityReduction)、分類(Classfication)、聚類(Clustering)等方法。當(dāng)我們面臨機(jī)器學(xué)習(xí)問(wèn)題時(shí),便可根據(jù)下圖來(lái)選擇相應(yīng)的方法。Sklearn具有以下特點(diǎn):簡(jiǎn)單高效的數(shù)據(jù)挖掘和數(shù)據(jù)分析工具讓每個(gè)人能夠在復(fù)雜環(huán)境中重復(fù)使用建立NumPy、Scipy、
系統(tǒng) 2019-09-27 17:51:55 1752