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