在Python3.x的世界里,cmp函數(shù)沒(méi)有了。那么sorted,min,max等需要比較函數(shù)作為參數(shù)的函數(shù)該如何用呢?以min函數(shù)的定義為例,有兩種重載形式:?jiǎn)螀?shù)(一個(gè)迭代器):復(fù)制代碼代碼如下:min(iterable[,key=func])->value多參數(shù)(多個(gè)待比較內(nèi)容):復(fù)制代碼代碼如下:min(a,b,c,...[,key=func])->value本文主要討論key=func參數(shù)的使用。舉例說(shuō)明吧:1.自定義對(duì)象的比較我定義了一個(gè)類te
系統(tǒng) 2019-09-27 17:48:44 1932
文章目錄獲取當(dāng)前決定路徑os.getcwd()獲取路徑下的所有文件名和路徑名os.listdir()創(chuàng)建文件夾os.makedirs()刪除文件夾os.remove()獲取文件的絕對(duì)路徑os.path.abspath("init.py")判斷指定路徑或者文件是否存在os.path.exists()將文件路徑和文件組成一個(gè)完成的路徑os.ptah.join()獲取當(dāng)前決定路徑os.getcwd()paths=os.getcwd()print(paths)#D
系統(tǒng) 2019-09-27 17:48:26 1932
本文實(shí)例講述了python實(shí)現(xiàn)ip代理池功能。分享給大家供大家參考,具體如下:爬取的代理源為西刺代理。用xpath解析頁(yè)面用telnet來(lái)驗(yàn)證ip是否可用把有效的ip寫入到本地txt中。當(dāng)然也可以寫入到redis、mongodb中,也可以設(shè)置檢測(cè)程序當(dāng)代理池中的ip數(shù)不夠(如:小于20個(gè))時(shí),啟動(dòng)該腳本來(lái)重新獲取ip,本腳本的代碼也要做相應(yīng)的改變。#!/usr/bin/envpython#-*-coding:utf-8-*-#@Version:1.0#@T
系統(tǒng) 2019-09-27 17:47:57 1932
閑來(lái)無(wú)事,想看看python,網(wǎng)上看了一下教程,好像入門問(wèn)題不大,那就說(shuō)干就干。先大概了解一下python的語(yǔ)法。傳送門:https://www.runoob.com/python/python-tutorial.html最基礎(chǔ)的語(yǔ)法啊,balabala一堆,反正先看下,了解一下。然后就是來(lái)搭建一下環(huán)境,網(wǎng)上看了一下,linux如何搭建python環(huán)境,一看嚇一跳,linux本身自帶python運(yùn)行環(huán)境。這么刺激的嘛,趕緊打開(kāi)我的linux,先瞅瞅:終端下
系統(tǒng) 2019-09-27 17:47:45 1932
mydict={'Li':['M',7],'Zhang':['E',2],'Wang':['P',3],'Du':['C',2],'Ma':['C',9],'Zhe':['H',7]}res=sorted(mydict.items(),key=lambdax:x[1][1])#根據(jù)value結(jié)構(gòu)[m,n]中n的值進(jìn)行排序print(res)#輸出#[('Zhang',['E',2]),('Du',['C',2]),('Wang',['P',3]),('Li
系統(tǒng) 2019-09-27 17:46:52 1932
在表達(dá)式中引用變量時(shí),Python會(huì)按照如下的順序遍歷各個(gè)作用域,尋找該變量:當(dāng)前函數(shù)作用域任何外圍作用域(比如包含當(dāng)前函數(shù)的其他函數(shù))global作用域,即代碼所在的模塊的作用域如果上述作用域內(nèi)都找不到變量,就會(huì)報(bào)NameError異常。但是對(duì)變量賦值時(shí),規(guī)則會(huì)有所不同。如果當(dāng)前作用域變量已存在,那么其值會(huì)被替換。如果不存在,則會(huì)視為在當(dāng)前作用域定義新變量,而不是向外圍作用域中尋找。如下函數(shù)deffunction():flag=Truedefhelper
系統(tǒng) 2019-09-27 17:46:14 1932
內(nèi)置函數(shù):Built-inFunctionsabs()all()any()ascii()bin()1.abs(x)返回x的絕對(duì)值。參數(shù)可以是整數(shù)或浮點(diǎn)數(shù)。如果參數(shù)是復(fù)數(shù),則返回其大小。importmathprint('abs(45)的值:',abs(45))print('abs(-45)的值:',abs(-45))print('abs(45+23)的值:',abs(45+23))print('abs(math.pi)的值:',abs(math.pi))輸出
系統(tǒng) 2019-09-27 17:46:09 1932
#堆排序defheap_sort(arr):root=len(arr)//2-1while(root>=0):heap_adjust(arr,root,len(arr)-1)root=root-1#此時(shí)生成的大頂堆,滿足每個(gè)根節(jié)點(diǎn)為子樹(shù)中最大,因此,之后只需要對(duì)最頂?shù)淖訕?shù)進(jìn)行調(diào)整i=len(arr)-1whilei>=0:arr[0],arr[i]=arr[i],arr[0]heap_adjust(arr,0,i-1)i=i-1defheap_adjust
系統(tǒng) 2019-09-27 17:45:50 1932
閉包(closure)是函數(shù)式編程的重要的語(yǔ)法結(jié)構(gòu)。函數(shù)式編程是一種編程范式(而面向過(guò)程編程和面向?qū)ο缶幊桃捕际蔷幊谭妒?。在面向過(guò)程編程中,我們見(jiàn)到過(guò)函數(shù)(function);在面向?qū)ο缶幊讨校覀円?jiàn)過(guò)對(duì)象(object)。函數(shù)和對(duì)象的根本目的是以某種邏輯方式組織代碼,并提高代碼的可重復(fù)使用性(reusability)。閉包也是一種組織代碼的結(jié)構(gòu),它同樣提高了代碼的可重復(fù)使用性。不同的語(yǔ)言實(shí)現(xiàn)閉包的方式不同。Python以函數(shù)對(duì)象為基礎(chǔ),為閉包這一語(yǔ)法結(jié)
系統(tǒng) 2019-09-27 17:45:45 1932
1.編譯nginx在網(wǎng)上買了一本《實(shí)戰(zhàn)nginx-取代Apache的高性能服務(wù)器》,寫的比較淺,主要是些配置方面的東西,不過(guò)卻正是目前我所需要的。由于需要支持https和rewrite,所以除了nginx的源碼之外,又下載了openssl-0.9.8r.tar.gz和pcre-8.12.tar.gz,把他們和nginx-1.0.4.tar.gz放到同一個(gè)目錄。為了方便編譯,筆者寫了一個(gè)腳本,代碼如下:#!/bin/bash#================
系統(tǒng) 2019-09-27 17:38:47 1932