Python初學(xué)者需要注意的事項(xiàng)小結(jié)(python2與python3)
一、注意你的Python版本
Python官方網(wǎng)站為http://www.python.org/,當(dāng)前最新穩(wěn)定版本為3.6.5,在3.0版本時(shí),Python的語(yǔ)法改動(dòng)較大,而網(wǎng)上的不少教程及語(yǔ)法針對(duì)的是1.0或者2.0版本的,這樣就造成不少初學(xué)者按照示例代碼來(lái)寫(xiě),但編譯都無(wú)法通過(guò)的問(wèn)題。
1、print()函數(shù)
舊的print函數(shù)用法為print ‘Hello',而新的print函數(shù)對(duì)此改成了print(‘Hello')并且不再兼容之前版本。
如果在3.X版本上Python上使用舊的print語(yǔ)法,將出現(xiàn)“SyntaxError: invalid syntax”錯(cuò)誤。
2、raw_input()與input()
Python3中用input()取代了raw_input(),當(dāng)然這僅僅是重命名,使用上并沒(méi)有不同;
3、比較符號(hào),使用!=替換<>
4、repr函數(shù)
使用repr()函數(shù)替換“(注:反單引號(hào),位于鍵盤(pán)1的左邊一個(gè)鍵),將一個(gè)object轉(zhuǎn)換為string,注意repr()與str()略有不同
5、exec()函數(shù)
exec用來(lái)執(zhí)行存儲(chǔ)在字符串或者文件中的Python語(yǔ)句,與JavaScript中的eval()函數(shù)類似,新的exec用法為exec(‘print(“Hello”)')
二、新手常遇到的問(wèn)題
1、如何寫(xiě)多行程序?
相信新手經(jīng)常會(huì)遇到為何對(duì)著Python Shell發(fā)現(xiàn)程序沒(méi)法換行,一換行就認(rèn)為是執(zhí)行了。這是因?yàn)槟闶褂玫氖荘ython Shell!你可以點(diǎn)擊File->New Window或者Ctrl+N新開(kāi)一個(gè)Python編輯器,這才是代碼編輯器,盡情寫(xiě)你的Python程序吧,執(zhí)行時(shí)只需要保存為后綴是.py的文件,然后F5就可以在Python Shell顯示執(zhí)行結(jié)果了。
2、如何執(zhí)行.py文件?
直接雙擊.py文件即可,如果出現(xiàn)不能執(zhí)行的問(wèn)題,可能是你沒(méi)有正確環(huán)境變量,在環(huán)境變量里找到Path,加上你Python的安裝路徑,比如C:\Python34\;
3、and,or,not
一般的編程語(yǔ)言比較關(guān)系運(yùn)算符都是&&、||以及!,但Python偏偏使用and、or和not來(lái)分別代碼并且、或者和非,我驚呆了。
4、True和False
沒(méi)錯(cuò),的確是True,而不是true,Python的這一點(diǎn)也實(shí)在令人難以理解,Python語(yǔ)法體系中基本都是小寫(xiě)的語(yǔ)法風(fēng)格,為什么到這里要使用Pascal命名方式?
三、Python的數(shù)據(jù)結(jié)構(gòu)
1、列表 List
聲明方式:
list=[1,2.3,'x','Hello']
擁有方法:
list.append(x) 在列表尾部添加一項(xiàng) list.extend(L) 用給定的列表將當(dāng)前列表接長(zhǎng),append與extend區(qū)別見(jiàn)http://hi.baidu.com/wewe39/item/c2599557739ec9dcd48bacf6 list.insert(i,x) 在給定的位置上插入項(xiàng) list.remove(x) 移除列表中的第一個(gè)值為x的項(xiàng),注意x并非索引 list.pop([i]) 刪除給定位置的項(xiàng)并返回 list.index(x) 返回列表中第一個(gè)值為x的項(xiàng)索引值,沒(méi)有匹配項(xiàng)則產(chǎn)生一個(gè)錯(cuò)誤 list.count(x) 返回列表中x出現(xiàn)的次數(shù) list.sort() 排序 list.reserve() 倒序
遍歷示例:
numbers=[0,1,2,3,4,5,6,7,8,9] for i in range(len(numbers)): print(i)
2、元組 Tuple
聲明方式比較特殊:
tuple=item1,item2,item3
例:
tuple=12,323.0,0.34,'Hello' for i in range(len(tuple)):#遍歷 print(tuple[i])
3、集合 Set
聲明方式:
set={item1,item2,item3}
例:
basket={'a','b','a','c','c','d'}
集合為無(wú)序不重復(fù)的元素集,上例聲明的結(jié)果將為
{'d', 'a', 'b', 'c'}
遍歷方式:
basket={'a','b','a','c','c','d'}
for i in basket:
print(i)
4、字典 Dict
聲明示例:
tel={'jack':23423,'sape':234}
可使用下述方式進(jìn)行賦值:
tel['guido']=4127
結(jié)果為:
{'sape': 234, 'guido': 4127, 'jack': 23423}
可使用items()方法取得鍵和對(duì)應(yīng)的值,例:
for k,v in tel.items(): print(k,v)
遍歷方式:
tel={'jack':23423,'sape':234}
for key in tel:
print(key ,':' , tel[key])
這篇文章就介紹到這了,具體的大家可以看下腳本之家以前發(fā)布的文章。
相關(guān)文章
python 定時(shí)修改數(shù)據(jù)庫(kù)的示例代碼
這篇文章主要介紹了python 定時(shí)修改數(shù)據(jù)庫(kù)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
python使用dabl幾行代碼實(shí)現(xiàn)數(shù)據(jù)處理分析及ML自動(dòng)化
這篇文章主要為大家分享一個(gè)名為?dabl?的開(kāi)源?Python?工具包,它可以自動(dòng)化機(jī)器學(xué)習(xí)模型開(kāi)發(fā),包括數(shù)據(jù)預(yù)處理、特征可視化和分析、建模2021-11-11
深入了解Python中Pytest Markers的使用方法
從這篇開(kāi)始,逐一解決fixture是啥,mark是啥,參數(shù)request是啥,鉤子函數(shù)是啥,parametrize參數(shù)化是啥,這些問(wèn)題,本片先介紹一下mark是啥,以及如何使用2023-09-09
Python?一篇文章看懂Python集合與字典數(shù)據(jù)類型
集合并不是一種數(shù)據(jù)處理類型,而是一種中間類型。集合(set)是一個(gè)無(wú)序、不重復(fù)的元素序列,經(jīng)常被用來(lái)處理兩個(gè)列表進(jìn)行交并差的處理性。本文將詳細(xì)講解集合的一些常用方法,感興趣的可以了解一下2022-03-03
快速排序的算法思想及Python版快速排序的實(shí)現(xiàn)示例
快速排序算法來(lái)源于分治法的思想策略,這里我們將來(lái)為大家簡(jiǎn)單解析一下快速排序的算法思想及Python版快速排序的實(shí)現(xiàn)示例:2016-07-07
基于python分布式爬蟲(chóng)并解決假死的問(wèn)題
這篇文章主要介紹了基于python分布式爬蟲(chóng)并解決假死的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04
示例詳解pyqtgraph繪制實(shí)時(shí)更新數(shù)據(jù)的圖
PyQtGraph是一個(gè)基于PyQt和NumPy的Python庫(kù),它專為實(shí)時(shí)數(shù)據(jù)可視化而設(shè)計(jì),本文通過(guò)實(shí)例代碼給大家介紹pyqtgraph繪制實(shí)時(shí)更新數(shù)據(jù)的圖,感興趣的朋友一起看看吧2024-12-12
用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的多線程TCP服務(wù)器的教程
這篇文章主要介紹了用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的多線程TCP服務(wù)器的教程,示例的運(yùn)行環(huán)境為Windows操作系統(tǒng),需要的朋友可以參考下2015-05-05

