Python2.7是Python2版本,Python3.x才是Python3版本。
公司主營業(yè)務:成都做網站、網站制作、移動網站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現互聯網宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯公司推出木壘哈薩克免費做網站回饋大家。
Python2與Python3的主要區(qū)別:
區(qū)別一:print語法使用
Python2.7? ?print語法使用? ? print "Hello Python"? ? ?
Python3.7? ?print語法使用? ? print("Hello Python")
區(qū)別二: raw_input()和input()
Python 2.7? raw_input()? input() 都存在 可使用? ? raw_input()接收字符串string? input()接收數字int /flot.
Python 3.7? raw_input()不存在? 僅存在input()? ?兩者合并? 接收任意格式 返回string
區(qū)別三: 函數cmp()
python 2.7? ?cmp(x,y)函數用于比較2個對象,如果 x y 返回 -1, 如果 x == y 返回 0, 如果 x y 返回 1
python3.7? ? cmp()已經不存在了,如果你需要實現比較功能,需要引入 operator 模塊,適合任何對象
內置函數,在python幫助文檔中:Build-in Functions
在Python提示符下,輸入下面語句,就會顯示Python提供的內置函數列表
dir('__builtins__')
abs(_) 內置函數,絕對值或復數的模。
chr() 以單字節(jié)整數為參數,返回一個單字符的字符串,其內容是與之對于的ASCII字符。如chr(69)返回'E'。
cmp() 比較字符串,cmp('Xiao','Jian')返回1
coerce() (可以看成一個數值類型轉換函數)有兩個參數,都是數字,返回這兩個數字的一個列表,將這兩個數字的數據類型統(tǒng)一。如coerce(1,2j),返回(1+0j,2j)
complex() 內置函數,把……轉換成復數,如complex('2')返回(2+0j),complex('2+3j')返回(2+3j)。
divmod() 內置函數,有兩個參數,返回(商,余數)。如divmod(10,2.5),返回(4.0,0.0)。
filter(function,list) 把函數應用于list中的每一項,并返回 從函數中返回真值的項。注:function可以為None,此時刪除list中的0或空項。
float() 內置函數,把……轉換成浮點數。
floor() 在math模塊內,需要import math。向下取整,即向x軸負方向取整。如math.floor(1.9)返回1,math.floor(-2.5)返回-3。
hash() 散列功能,詞典鍵的最精確功能需求是它一定是可散列的。對象的散列值是半唯一的、內部生成的數字,它可用于快速比較。
int() 內置函數,把字符串或者小數轉換為一個整數。直接去掉小數部分。如int(5.3)返回5,int('5')返回5。
len(x) 序列x的長度
long() 內置函數,把數字 或 代表整數的字符串 轉換成長整型
map(function,list[,list,...])
max() 找出字符串中最大的字符。如:min('find the minimum character'),返回' ',即空格。
min() 找出字符串中最小的字符。如:max('find the maximum character'),返回'x'。
oct() 將十進制數轉換成八進制,再變成字符。
ord() 參數是單個的ASCII字符,返回該ASCII字符對應的整數值,如ord('a')返回97。
pow() 內置函數,乘方。如果有第三個參數,則表示乘方的結果對第三參數取余,如pow(2,3)返回8,pow(2,3,4)返回0。
print 輸出到窗口
range() 生成一個向量,例如range(m,n,d),從m到n,步長為d;range(m)則生成0:m-1,步長為1的向量。
raw_input() 輸入函數,參數為字符串,作為輸入時的提示語句。返回值為字符串。
reduce(func)
round() 內置函數,對數字進行四舍五入,第二個參數表示精確到小數點后指定的位數,默認值為0。如round(2.4)返回2,round(1.398,2)返回1.40。
type() 返回某數據的類型
可以使用多進程或多線程并發(fā)下載。其實你的方法已經是多進程的一種了。
python中有多進程模塊multiprocessing和多線程multithreading。
思路是這樣,將需要下載的連接送入隊列,然后各個進程(或線程)從隊列里拿任務然后下載。前面的兩個類庫都提供進程、線程安全的隊列。
樓下給了個多線程的示例,這里我給一個稍微復雜點的進程的示例。其實線程和進程庫的接口基本是一致的。
#!/usr/bin/env?python
#?encoding=utf-8
#?test.py
from?multiprocessing?import?Queue,?Process
from?Queue?import?Empty
import?urllib
import?time
urls?=?[line.strip()?for?line?in?open('urls.txt')]
queue?=?Queue(1024)
for?url?in?urls:
queue.put(url)
def?download():
while?True:
try:
url?=?queue.get()
f?=?urllib.urlopen(url)
r?=?f.read()
#?這里保存你下載的文件
except?Empty:
time.sleep(5)
except?Exception,?e:
print?'download?error:?%s'?%?e
for?i?in?range(10):
p?=?Process(target=download)
p.start()
p.join()
使用方法:編輯一個文件urls.txt,每行一個url。然后:
nohup?./test.py?
結束進程則需要找到它的進程號,然后kill -9
望采納,謝謝支持!
蛋疼的公司網絡,看不到圖片。
首先確認下是否import成功了
比如你
import?kNN
那你調用的時候要寫
kNN.classify0
不然就寫
from?kNN?import?*
然后就可以直接調用了
(默認你放在同個目錄下)
2.7的版本在使用input()函數的時候,會調用eval()這個函數。所以不需要轉換。