是的,在python3中取消了file函數(shù),但是可以使用open()來代替。
十載的沈陽網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整沈陽建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“沈陽網(wǎng)站設(shè)計”,“沈陽網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。
以下是在文檔中找到的說明:
In Python?2 there is a?file?type builtin. This is replaced with various file types in Python?3. You commonly see code in Python?2 that uses?file(pathname)?which will fail in Python?3. Replace this usage with?open(pathname).
If you need to test for types you can in Python?3 check for?io.IOBase?instead of?file.
open()的使用方法請查看文檔:open()文檔
Python,是一種面向?qū)ο蟮慕忉屝陀嬎銠C(jī)程序設(shè)計語言,由荷蘭人Guido van Rossum于1989年發(fā)明,第一個公開發(fā)行版發(fā)行于1991年。
我們可以從python的文檔查到更多關(guān)于python3的資料python3中文文檔
把judge函數(shù)里的range(2,x+1)改成range(2,x),不然函數(shù)一直返回false,因為i最后會等于x
【Python】 sorted函數(shù)
我們需要對List、Dict進(jìn)行排序,Python提供了兩個方法
對給定的List L進(jìn)行排序,
方法1.用List的成員函數(shù)sort進(jìn)行排序,在本地進(jìn)行排序,不返回副本
方法2.用built-in函數(shù)sorted進(jìn)行排序(從2.4開始),返回副本,原始輸入不變
--------------------------------sorted---------------------------------------
help(sorted)
Help on built-in function sorted in module __builtin__:
sorted(...)
sorted(iterable, cmp=None, key=None, reverse=False) -- new sorted list
---------------------------------sort----------------------------------------
help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) - -1, 0, 1
-----------------------------------------------------------------------------
iterable:是可迭代類型;
cmp:用于比較的函數(shù),比較什么由key決定;
key:用列表元素的某個屬性或函數(shù)進(jìn)行作為關(guān)鍵字,有默認(rèn)值,迭代集合中的一項;
reverse:排序規(guī)則. reverse = True 降序 或者 reverse = False 升序,有默認(rèn)值。
返回值:是一個經(jīng)過排序的可迭代類型,與iterable一樣。
參數(shù)說明:
(1) cmp參數(shù)
cmp接受一個函數(shù),拿整形舉例,形式為:
def f(a,b):
return a-b
如果排序的元素是其他類型的,如果a邏輯小于b,函數(shù)返回負(fù)數(shù);a邏輯等于b,函數(shù)返回0;a邏輯大于b,函數(shù)返回正數(shù)就行了
(2) key參數(shù)
key也是接受一個函數(shù),不同的是,這個函數(shù)只接受一個元素,形式如下
def f(a):
return len(a)
key接受的函數(shù)返回值,表示此元素的權(quán)值,sort將按照權(quán)值大小進(jìn)行排序
(3) reverse參數(shù)
接受False 或者True 表示是否逆序
例子:
(1)按照元素長度排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
def f(x):
return len(x)
sort(key=f)
print L
輸出:
[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]
(2)按照每個字典元素里面key為1的元素的值排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
def f2(a,b):
return a[1]-b[1]
L.sort(cmp=f2)
print L
. 對由tuple組成的List排序
Python代碼
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]
用key函數(shù)排序:返回由tuple組成的list
Python代碼
sorted(students, key=lambda student : student[2]) # sort by age
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
用cmp函數(shù)排序
Python代碼
sorted(students, cmp=lambda x,y : cmp(x[2], y[2])) # sort by age
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
用 operator 函數(shù)來加快速度,
Python代碼
from operator import itemgetter, attrgetter
sorted(students, key=itemgetter(2))
用 operator 函數(shù)進(jìn)行多級排序
Python代碼
sorted(students, key=itemgetter(1,2)) # sort by grade then by age
[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]
2. 對由字典排序 ,返回由tuple組成的List,不再是字典。
Python代碼
d = {'data1':3, 'data2':1, 'data3':2, 'data4':4}
sorted(d.iteritems(), key=itemgetter(1), reverse=True)
[('data4', 4), ('data1', 3), ('data3', 2), ('data2', 1)]
當(dāng)前題目:python3.0函數(shù),Python3 函數(shù)
新聞來源:http://chinadenli.net/article2/hddpic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、用戶體驗、云服務(wù)器、定制開發(fā)、微信公眾號、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)