1.出現(xiàn)ImportError: No module named requests錯(cuò)誤硫嘶,就是第一次導(dǎo)入requests模塊,報(bào)的錯(cuò)梧税。
解決辦法:1.先進(jìn)入python安裝目錄下的scripts文件夾沦疾,C:\Python27\Scripts。2.運(yùn)行pip3 install requests命令,因?yàn)槲夷夸浵轮挥衟ip,我就運(yùn)行了pip install requests命令佃乘,然后就可以了。
查考資料:https://stackoverflow.com/questions/17309288/importerror-no-module-named-requests
2.str和int類型的拼接:
直接利用+拼接會(huì)報(bào)出TypeError: cannot concatenate 'str' and 'int' objects的錯(cuò)誤忆畅,就是str與int類型無法直接拼接。
python中內(nèi)置的方法:
chr()函數(shù)將0-255的整數(shù)值轉(zhuǎn)換為單個(gè)ASCII字符
ord()函數(shù)返回單個(gè)字符的ASCII值
int()函數(shù)嘗試將字符串按字面意思轉(zhuǎn)換成為整數(shù)晾蜘,比如int('100')返回整數(shù)值100
str()函數(shù)將整數(shù)值轉(zhuǎn)換為字符串邻眷,比如str(100)返回字符串'100'
代碼示例:
num = random.randint(1,100)
print '猜錯(cuò)了眠屎,應(yīng)該是'++str(num)+'哦'
這樣就可以拼接了剔交。
3.python中的引用和拷貝:
參考這篇文章http://blog.csdn.net/huaweitman/article/details/9492615
大致就是說a = b 這樣的引用因?yàn)閍和b指向同一個(gè)地址,改變其中一個(gè)另一個(gè)也會(huì)改變改衩,而拷貝之后改變a或b其中一個(gè)岖常,另一個(gè)不受影響。
4.Linux下運(yùn)行./hello.py報(bào)Error:no such file "hello python"錯(cuò)
解決方法:可能是python代碼沒有首行沒有加上''#! usr/bin/python''葫督,
其中#!/usr/bin/Python是告訴操作系統(tǒng)執(zhí)行這個(gè)腳本的時(shí)候竭鞍,調(diào)用/usr/bin下的python解釋器板惑;
而#!/usr/bin/env python這種用法是為了防止操作系統(tǒng)用戶沒有將python裝在默認(rèn)的/usr/bin路徑里。當(dāng)系統(tǒng)看到這一行的時(shí)候偎快,首先會(huì)到env設(shè)置里查找python的安裝路徑冯乘,再調(diào)用對(duì)應(yīng)路徑下的解釋器程序完成操作。#!/usr/bin/python相當(dāng)于寫死了python路徑;#!/usr/bin/env python會(huì)去環(huán)境設(shè)置尋找python目錄,推薦這種寫法
5.Ubuntu下退出ipython界面晒夹,用quit命令
參考文章:http://blog.csdn.net/wh_19910525/article/details/8040494
退出python環(huán)境裆馒,用exit()
6.程序小白的Python連接Mysql全過程記錄:
https://www.douban.com/note/560439959/
對(duì)于pymysql的安裝windows下可以用pip install pymysql命令。
ubuntu python3.5只支持安裝pymysql
# git clone https://github.com/PyMySQL/PyMySQL
# cd PyMySQL/
# python3 setup.py install
# 需要安裝 sudo apt-get install python3-setuptools
7.PyCharm導(dǎo)入模塊使用技巧
比如導(dǎo)入bs4模塊丐怯,
直接輸入import bs4喷好,然后會(huì)報(bào)錯(cuò),提示模塊不存在
按 alt+回車 出現(xiàn)錯(cuò)誤修正提示
選擇安裝模塊即可自動(dòng)安裝
8.python切片
shoplist[:-1]會(huì)返回除了最后一個(gè)項(xiàng)目外包含所有項(xiàng)目的序列切片读跷,shoplist[::-1]會(huì)返回倒序序列切片梗搅。
'xieyang'
正序是:0 1 2 3 4 5 6
倒序是:-7 -6 -5 -4 -3 -2 -1
9.編碼問題
os.listdir(path)對(duì)于含有漢字的話,打印出來的是ASCII碼效览。
‘\xbe\xea\xb6\xf9\xa3\xac\xce\xd2\xb0\xae\xc4\xe3\xa3\xa1’是ascii碼
10.python安裝時(shí)候python路徑選擇第一個(gè)无切,這樣就會(huì)自動(dòng)安裝到系統(tǒng)環(huán)境變量中了。
11.關(guān)于windows下同時(shí)安裝py2和py3丐枉,還有pip2和pip3的問題:
http://blog.csdn.net/qiang12qiang12/article/details/53239866
https://www.zhihu.com/question/21653286
python虛擬環(huán)境virtualenv安裝和配置:
http://blog.csdn.net/pipisorry/article/details/39998317
http://blog.csdn.net/wukong616/article/details/48025147
關(guān)于source bin/activate這部執(zhí)行出錯(cuò):
http://www.th7.cn/Program/Python/201606/872439.shtml
關(guān)鍵步驟是:切換到Scripts目錄下订雾,運(yùn)行activate.bat命令
12.urllib 和urllib2之間的區(qū)別
在python中,urllib和urllib2不可相互替代的矛洞。
整體來說洼哎,urllib2是urllib的增強(qiáng),但是urllib中有urllib2中所沒有的函數(shù)沼本。
urllib2可以用urllib2.openurl中設(shè)置Request參數(shù)噩峦,來修改Header頭。如果你訪問一個(gè)網(wǎng)站抽兆,想更改User Agent(可以偽裝你的瀏覽器)识补,你就要用urllib2.
urllib支持設(shè)置編碼的函數(shù),urllib.urlencode,在模擬登陸的時(shí)候辫红,經(jīng)常要post編碼之后的參數(shù)凭涂,所以要想不使用第三方庫完成模擬登錄,你就需要使用urllib贴妻。
urllib一般和urllib2一起搭配使用切油。
13.python random.seed
andom.seed方法的作用是給隨機(jī)數(shù)對(duì)象一個(gè)種子值,用于產(chǎn)生隨機(jī)序列名惩。
對(duì)于同一個(gè)種子值的輸入澎胡,之后產(chǎn)生的隨機(jī)數(shù)序列也一樣。
通常是把時(shí)間秒數(shù)等變化值作為種子值,達(dá)到每次運(yùn)行產(chǎn)生的隨機(jī)系列都不一樣攻谁。