Python作為一門新型的編程語言(一般常用作腳本語言)很受歡迎,畢竟相對其他的編程語言(Java ,C#等)來說比較容易入手。那么,在剛開始學(xué)習(xí)Python時有哪些疑難點(diǎn)需要掌握呢?以下是小編為你整理的python怎么樣學(xué) ?
list:列表。關(guān)于列表主要有創(chuàng)建、訪問、添加、刪除和替換幾方面來看。 ?
創(chuàng)建:L=[1,2,3,4,5] ?
訪問:分按照索引訪問和倒序訪問。前者:L[0]=1,L[4]=5;后者:L[-1]=5,L[-5]=1
?
添加: ?
1,直接在*添加:L.append() ?
例如:L.append(6)則L=[1,2,3,4,5,6] ?
2. L.insert()這個需要輸入兩個參數(shù)(前面參數(shù)是索引號,后面是新元素),例如L.insert(0,8)則L=[8,1,2,3,4,5] ?
3,刪除: ?
L.pop(),這個是刪除*一個元素;如果刪除某個位置的元素,只需要在()中輸入索引號即可。如:L.pop(0)則L=[2,3,4,5] ?
4,替換: ?
想替換哪個位置的元素,只需要L[xx]其中xx就是替換的元素的索引號。例如: ?
L[1]='Adam'則L=[1,'Adam',3,4,5] ?
2 ?
tuple:元組。創(chuàng)建tuple例如:t=(1,2,3) ?
注意:單元素的tuple必須要在元素后面添加“,”,例如:t=(1,) ?
查看tuple只需要t[xx]其中xx表示元素的索引號。 ?
tuple是不可變的,一旦創(chuàng)建便不可修改。 ?
3 ?
dict:字典。關(guān)于dict主要有創(chuàng)建、訪問、添加和遍歷幾方面來看。 ?
創(chuàng)建:dict={'A':1,'B':2,'C':3}前面的為Key后面的問Value,dict就是有Key:Value組合成的??梢酝ㄟ^Key來查找Value。 ?
訪問:d[key]訪問時必須保證key是在dict中的。例如:print d['A']=1;key在不在dict中需要判斷(一般都使用dict提供的get方法即可),例如:print d.get('A')返回1;如果輸入的key不存在dict中,那么print d['p']返回的是None。 ?
注意:dict的特點(diǎn):無序,key必須是不可變。 ?
更新(添加):直接用賦值語句即可。例如:d['M']=4則print d返回的可能是{''C':3,'M':4,A':1,'B':2}因?yàn)閐ict是無序的,所以返回的順序也是不確定的。 ?
遍歷:dict={'A':1,'B':2,'C':3使用for即可 ?
for key in d: ?
print key ?
則返回的是對應(yīng)的key值: ?
A ?
B ?
C ?
變量的應(yīng)用
首先看變量(實(shí)際是對象引用,只是大家在其他語言的影響下,習(xí)慣叫變量) ?
如果2個變量的數(shù)值相同,那么必然是地址相同,所以a is b是True(正確的) ?
解析:a = 123,這時候內(nèi)存里面沒有123這個對象,于是創(chuàng)建了123,當(dāng)b = 123的時候,內(nèi)存里面有了123這個對象,于是直接指向123這個對象,這就是Python的特點(diǎn),變量也是引用對象 ?
當(dāng)換成元組之后,結(jié)果就不一樣了,結(jié)果是False(不正確) ?
比如:a = (123,456) b = (123,456) ?
解析:a是指向一個元組,b是指向一個元組,這些元組分別有自己的內(nèi)存地址,然后這些元組里面的元素再分別指向其他對象 ?
但是具體到某一個元素的時候,結(jié)果又一樣了 ?
比如,a = (123,456) b = (123,456),比較,a[0] 與 b[0] ?
解析:當(dāng)具體指向某一個元素的時候,實(shí)際指向這個元素指向的對象 ?
注意:當(dāng)元組只有一個元素的時候,創(chuàng)建的不是元組(列表就不一樣了,如圖2) ?
如:a = (123),那么a的類型的int,不是元組類型 ?
關(guān)于==符號 ?
python的==是比較值是否相同,不是比較內(nèi)存是否相同 ?
比如:a =(123,456) b =(123,456),而a==b則是True,a is b是Flash ?
查看內(nèi)存地址,用id() ?
說了這么多,is是比較內(nèi)存地址,那么人眼比較可以直接打印出內(nèi)存地址 ?
比如:a = 123,id(a)則是獲取a的內(nèi)存地址 ?
輸出方法
輸出無外乎就是將想要打印的東西或者結(jié)果打印出來,即為輸出 ?
使用print()函數(shù)進(jìn)行輸出
?
打印字符串 ?
可以在括號中加上引號引起來的字符打印輸出 ?
例如輸出test,代碼實(shí)現(xiàn)如下 ?
print('test') ?
當(dāng)然也可以打印多個字符串 ?
例如輸出'test , ','hello world!' ?
可以次用逗號分割,就可以連接在一起輸出到屏幕 ?
print('test , ','hello world!') ?
稍作說明:print()會依次打印每個字符串,遇到逗號就會輸出一個空格,這樣子字符串就連成一片輸出來嘍。 ?
還可以打印整數(shù)(數(shù)值型的) ?
例如 ?
print(250) ?
當(dāng)還可以將數(shù)值跟字符一起輸出來 ?
例如:算一個250+250 ?
print(250+250) ?
輸出的更漂亮一些,可以這樣 ?
print('205 + 250 = ' , 250+250) ?
chardet模塊功能
Python 的保留字,意思就是我們不能用它作為任何標(biāo)識符的名稱,python 提供標(biāo)準(zhǔn)庫,可以輸出當(dāng)前版本的所有關(guān)鍵字
Python 程序中的注釋
單行注釋:“#”
輸入代碼:
#*個程序 ?
print("Hello,Python!") #打印 Hello Python
注意在編程時,一定要使用英文的標(biāo)點(diǎn)符號,不然執(zhí)行程序的時候會出現(xiàn)報錯
Python的行與縮進(jìn)
python*特色的就是使用縮進(jìn)來表示代碼塊,不需要使用大括號({})。
縮進(jìn)的空格數(shù)是可變的,但是同一個代碼塊的語句必須包含相同的縮進(jìn)空格數(shù)。
Python 數(shù)據(jù)類型 - 字符串有以下幾個特點(diǎn)
(1)python中單引號和雙引號使用完全相同。
(2)使用三引號('''或""")可以指定一個多行字符串。 ?
(3)轉(zhuǎn)義符 ''
(4)自然字符串, 通過在字符串前加r或R。 如 r"this is a line with n" 則n會顯示,并不是換行。
(5)python允許處理unicode字符串,加前綴u或U, 如 u"this is an unicode string"。
(6)字符串是不可變的。
(7)按字面意義級聯(lián)字符串,如"this " "is " "string"會被自動轉(zhuǎn)換為this is string。