日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python基础-------python2.7教程学习【廖雪峰版】(二)

發(fā)布時間:2024/4/14 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python基础-------python2.7教程学习【廖雪峰版】(二) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?2017年6月7日14:59:27
任務:
?? ?看完python基礎
1.計算機顧名思義就是可以做數(shù)學計算的機器,因此,計算機程序理所當然地可以處理各種數(shù)值。但是,計算機能處理的遠不止數(shù)值,還可以處理文本、圖形、音頻、視頻、網(wǎng)頁等各種各樣的數(shù)據(jù),不同的數(shù)據(jù),需要定義不同的數(shù)據(jù)類型。
2.因為感情的事,自己心情真是巨差,差到爆炸,提不起精神來學習,靠。
3.整數(shù)和浮點數(shù)在計算機內部存儲的方式是不同的,整數(shù)運算永遠是精確的(除法難道也是精確的?是的!),而浮點數(shù)運算則可能會有四舍五入的誤差。
4.字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。請注意,''或""本身只是一種表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c這3個字符。如果'本身也是一個字符,那就可以用""括起來,比如"I'm OK"包含的字符是I,',m,空格,O,K這6個字符。
5.轉義字符\可以轉義很多字符,比如\n表示換行,\t表示制表符,字符\本身也要轉義,所以\\表示的字符就是\
6.布爾值
布爾值和布爾代數(shù)的表示完全一致,一個布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來:
7.布爾值經(jīng)常用在條件判斷中。
8.空值
空值是Python里一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。
此外,Python還提供了列表、字典等多種數(shù)據(jù)類型,還允許創(chuàng)建自定義數(shù)據(jù)類型,
9.變量在程序中就是用一個變量名表示了,變量名必須是大小寫英文、數(shù)字和_的組合,且不能用數(shù)字開頭
10.Py是動態(tài)語言,變量的類型可以隨時變化,但是java是靜態(tài)語言,變量必須指定為固定的類型。
1.常量
所謂常量就是不能變的變量,比如常用的數(shù)學常數(shù)π就是一個常量。在Python中,通常用全部大寫的變量名表示常量:
2.整數(shù)運算結果永遠是精確的
3.Python支持多種數(shù)據(jù)類型,在計算機內部,可以把任何數(shù)據(jù)都看成一個“對象”,而變量就是在程序中用來指向這些數(shù)據(jù)對象的,對變量賦值就是把數(shù)據(jù)和變量給關聯(lián)起來。
4.字符串也是一種數(shù)據(jù)類型,但是,字符串比較特殊的是還有一個編碼問題
5.要處理中文顯然一個字節(jié)是不夠的,至少需要兩個字節(jié),而且還不能和ASCII編碼沖突,所以,中國制定了GB2312編碼,用來把中文編進去。
6.ASCII編碼是1個字節(jié),而Unicode編碼通常是2個字節(jié)。
7.在計算機內存中,統(tǒng)一使用Unicode編碼,當需要保存到硬盤或者需要傳輸?shù)臅r候,就轉換為UTF-8編碼。
8.Python提供了ord()和chr()函數(shù),可以把字母和對應的數(shù)字相互轉換:
9.Python在后來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示
10.把u'xxx'轉換為UTF-8編碼的'xxx'用encode('utf-8')方法:
1.反過來,把UTF-8編碼表示的字符串'xxx'轉換為Unicode字符串u'xxx'用decode('utf-8')方法:
2.在Python中,采用的格式化方式和C語言是一致的,用%實現(xiàn)
3.%運算符就是用來格式化字符串的。在字符串內部,%s表示用字符串替換,%d表示用整數(shù)替換,有幾個%?占位符,后面就跟幾個變量或者值,順序要對應好。如果只有一個%?,括號可以省略。

常見的占位符有:
%d?? ?整數(shù)
%f?? ?浮點數(shù)
%s?? ?字符串
%x?? ?十六進制整數(shù)

其中,格式化整數(shù)和浮點數(shù)還可以指定是否補0和整數(shù)與小數(shù)的位數(shù):
4.牢記中文要加u:
name = raw_input(u"請輸入你的姓名:")
總結:看了基礎教程對知識又有了一個新的鞏固,加油。
5.list
Python內置的一種數(shù)據(jù)類型是列表:list。list是一種有序的集合,可以隨時添加和刪除其中的元素。
list是一個可變的有序表,所以,可以往list中追加元素到末尾:
ist里面的元素的數(shù)據(jù)類型也可以不同
list元素也可以是另一個list,
總結:list中的數(shù)據(jù)類型不一定要相同,list中還可以包含list,list是有序的,可以增加,也可以刪除元素。
如果一個list中一個元素也沒有,就是一個空的list,它的長度為0
append() 是在列表或者元組的末尾增加元素 比如append('a') :是指在列表或者元組的最后位置增加'a'這個元素 insert()
是在列表或者元組的索引范圍內的任何地方插入元素 比如insert(1,'a'):是指在列表或者元組的第二個索引位置增加'a'這個元素
6.tuple

另一種有序列表叫元組:tuple。tuple和list非常類似,但是tuple一旦初始化就不能修改,比如同樣是列出同學的名字:
不可變的tuple有什么意義?因為tuple不可變,所以代碼更安全。如果可能,能用tuple代替list就盡量用tuple。
tuple元組中可以套list,其中的list是可變的。
tuple所謂的“不變”是說,tuple的每個元素,指向永遠不變。
list和tuple是Python內置的有序集合,一個可變,一個不可變。根據(jù)需要來選擇使用它們。
條件判斷和循環(huán)
1.if <條件判斷1>:
??? <執(zhí)行1>
elif <條件判斷2>:
??? <執(zhí)行2>
elif <條件判斷3>:
??? <執(zhí)行3>
else:
??? <執(zhí)行4>
2.循環(huán)

Python的循環(huán)有兩種,一種是for...in循環(huán),依次把list或tuple中的每個元素迭代出來,看例子:

names = ['Michael', 'Bob', 'Tracy']
for name in names:
??? print name

3.所以for x in ...循環(huán)就是把每個元素代入變量x
4.如果要計算1-100的整數(shù)之和,從1寫到100有點困難,幸好Python提供一個range()函數(shù),可以生成一個整數(shù)序列,比如range(5)生成的序列是從0開始小于5的整數(shù)
5.第二種循環(huán)是while循環(huán),只要條件滿足,就不斷循環(huán),條件不滿足時退出循環(huán)。比如我們要計算100以內所有奇數(shù)之和,可以用while循環(huán)實現(xiàn):
6.raw_input()讀取的內容永遠以字符串的形式返回,把字符串和整數(shù)比較就不會得到期待的結果,必須先用int()把字符串轉換為我們想要的整型:
7.循環(huán)是讓計算機做重復任務的有效的方法,有些時候,如果代碼寫得有問題,會讓程序陷入“死循環(huán)”,也就是永遠循環(huán)下去。這時可以用Ctrl+C退出程序,或者強制結束Python進程。
8.dict

Python內置了字典:dict的支持,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)存儲,具有極快的查找速度。
list越長,耗時越長
為什么dict查找速度這么快?因為dict的實現(xiàn)原理和查字典是一樣的。假設字典包含了1萬個漢字,我們要查某一個字,一個辦法是把字典從第一頁往后翻,直到找到我們想要的字為止,這種方法就是在list中查找元素的方法,list越大,查找越慢。

第二種方法是先在字典的索引表里(比如部首表)查這個字對應的頁碼,然后直接翻到該頁,找到這個字,無論找哪個字,這種查找速度都非常快,不會隨著字典大小的增加而變慢。

dict就是第二種實現(xiàn)方式,給定一個名字,比如'Michael',dict在內部就可以直接計算出Michael對應的存放成績的“頁碼”,也就是95這個數(shù)字存放的內存地址,直接取出來,所以速度非常快。

你可以猜到,這種key-value存儲方式,在放進去的時候,必須根據(jù)key算出value的存放位置,這樣,取的時候才能根據(jù)key直接拿到value。
要刪除一個key,用pop(key)方法,對應的value也會從dict中刪除:
和list比較,dict有以下幾個特點:

??? 查找和插入的速度極快,不會隨著key的增加而增加;
??? 需要占用大量的內存,內存浪費多。
而list相反:
??? 查找和插入的時間隨著元素的增加而增加;
??? 占用空間小,浪費內存很少。
所以,dict是用空間來換取時間的一種方法。
dict可以用在需要高速查找的很多地方,在Python代碼中幾乎無處不在,正確使用dict非常重要,需要牢記的第一條就是dict的key必須是不可變對象。
這是因為dict根據(jù)key來計算value的存儲位置,如果每次計算相同的key得出的結果不同,那dict內部就完全混亂了。這個通過key計算位置的算法稱為哈希算法(Hash)。
要保證hash的正確性,作為key的對象就不能變。在Python中,字符串、整數(shù)等都是不可變的,因此,可以放心地作為key。而list是可變的,就不能作為key:
9.set
set和dict類似,也是一組key的集合,但不存儲value。由于key不能重復,所以,在set中,沒有重復的key。

要創(chuàng)建一個set,需要提供一個list作為輸入集合:
通過add(key)方法可以添加元素到set中,可以重復添加,但不會有效果:
通過remove(key)方法可以刪除元素:
set和dict的唯一區(qū)別僅在于沒有存儲對應的value,但是,set的原理和dict一樣,所以,同樣不可以放入可變對象,因為無法判斷兩個可變對象是否相等,也就無法保證set內部“不會有重復元素”。試試把list放入set,看看是否會報錯。
對象a的內容是'abc',但其實是指,a本身是一個變量,它指向的對象的內容才是'abc'
所以,對于不變對象來說,調用對象自身的任意方法,也不會改變該對象自身的內容。相反,這些方法會創(chuàng)建新的對象并返回,這樣,就保證了不可變對象本身永遠是不可變的。

-------------------------------------分割線-----------------------------------

總結:

  比慕課網(wǎng)上的內容更細,內容上更多,喜歡老師這種風格,加油。下一步該看函數(shù)了,

轉載于:https://www.cnblogs.com/Worssmagee1002/p/6971287.html

總結

以上是生活随笔為你收集整理的python基础-------python2.7教程学习【廖雪峰版】(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。