yield的功能類似于return,但是不同之處在于它返回的是生成器。生成器生成器是通過一個或多個yield表達式構成的函數,每一個生成器都是一個迭代器(但是迭代器不一定是生成器)。如果一個函數包含yield關鍵字,這個函數就會變為一個生成器。生成器并不會一次返回所有結果,而是每次遇到yield關鍵字后返回相應結果,并保留函數當前的運行狀態,等待下一次的調用。由于生成器也是一個迭代器,那么它就應該支持next方法來獲取下一個值。基本操作#通過`yield`
系統 2019-09-27 17:52:18 1935
基礎版(list方法)#比較占內存w=int(input("輸入一個數字還你一個斐波那契數列:"))list_res=[]deflist_n(n):ifn>=3:res=list_n(n-1)+list_n(n-2)else:res=1returnresprint("開始")foriinrange(0,w):list_res.append(list_n(i+1))print(list_res)升級版#比較占內存num=int(input("輸入一個數字還你
系統 2019-09-27 17:52:01 1935
函數這么重要的東西自然少不了。那么在python中是怎么定義的呢?defcgg(name):print("haha%s"%name)def是定義的意思,而cgg是函數名,name是參數。當然了,有了函數嗎,自然少不了函數的返回值。那么這里用的依然是return。defcgg(a,b):returna+b模塊一個小例子:importtimeprint(time.asctime())這個可以顯示現在的時間。而這個time就是一個模塊,包括之前的turtle也是
系統 2019-09-27 17:51:49 1935
本文實例為大家分享了python中的代碼行數統計,供大家參考,具體內容如下思路:統計文件中代碼的總行數減去空行單行注釋以及多行注釋功能:1.獲取文件內容的總行數2.排除空行單行注釋多行注釋defcode_statistics(path):##打開這個文件withopen(path,'r',encoding='utf-8')asopenFile:#按列讀取fileline=openFile.readlines()#給非代碼行一個變量i=0#整個文件里面內容的
系統 2019-09-27 17:51:02 1935
美國隊長的鍋emmmmmmmm.......沒錯就是他的鍋#所需依賴:python3pycharm#print打印print('helloworld!')#注釋符號#井號后面灰色的內容是注釋,相當于筆記,會被機器忽略#變量和值#n是變量,100是值,等號的作用是賦值#n相當于高中數學的xyz,只不過xyz的值只能是數字,變量的功能要更強大n=100m='hello'print(n)print(m)#數據類型,這里只講兩個,剩下的需要同學自己去系統地學習了#
系統 2019-09-27 17:50:55 1935
walker經常用到當前時間和相對時間,用來統計程序執行的效率,簡單記一下,便于copy。相對時間>>>importtime#相對時間>>>startTime=time.time()>>>'%.2fs'%(time.time()-startTime)'24.51s'格式化當前時間#格式化當前時間>>>time.strftime('%Y-%m-%d%H:%M:%S',time.localtime())'2016-01-0510:34:06'時間戳與時間的轉換
系統 2019-09-27 17:50:52 1935
常見的排序算法:冒泡排序,選擇排序,插入排序,希爾排序,快速排序,堆排序,歸并排序。冒泡排序原理:兩兩元素進行比較,每一趟能夠確定最大元素的位置,穩定算法defbubble_sort(alist):'''冒泡排序'''#[5,4,3,2,1][4,5,3,2,1][4,3,5,2,1][4,3,2,5,1][4,3,2,1,5]n=len(alist)foriinrange(n):#count=0forjinrange(0,n-1):ifalist[j]>
系統 2019-09-27 17:49:28 1935
文章目錄獲取當前決定路徑os.getcwd()獲取路徑下的所有文件名和路徑名os.listdir()創建文件夾os.makedirs()刪除文件夾os.remove()獲取文件的絕對路徑os.path.abspath("init.py")判斷指定路徑或者文件是否存在os.path.exists()將文件路徑和文件組成一個完成的路徑os.ptah.join()獲取當前決定路徑os.getcwd()paths=os.getcwd()print(paths)#D
系統 2019-09-27 17:48:26 1935
隨便在網上找了找,感覺都是講半天講不清楚,這里寫一下。defgenerator():whileTrue:receive=yield1print('extra'+str(receive))g=generator()print(next(g))print(g.send(111))print(next(g))輸出:1extra1111extraNone1為什么會這樣呢,點進send就能看到一句話send:Resumesthegeneratorand"sends"
系統 2019-09-27 17:48:19 1935
conda測試指南在開始這個conda測試之前,你應該已經下載并安裝好了Anaconda或者Miniconda注意:在安裝之后,你應該關閉并重新打開windows命令行。一、Conda測試過程:使用conda。首先我們將要確認你已經安裝好了conda配置環境。下一步我們將通過創建幾個環境來展示conda的環境管理功能。使你更加輕松的了解關于環境的一切。我們將學習如何確認你在哪個環境中,以及如何做復制一個環境作為備份。測試python。然后我們將檢查哪一個版
系統 2019-09-27 17:48:14 1935