潛心再學python

來源:互聯網
上載者:User

Python是一種簡單到可愛的語言,之前對其有過一段時間接觸,但是只把她當做配角。只是在需要evaluation工具實現簡單評測時才用到她,而且很少會用到類,很少超過100行(雖然用C寫100行可能python只用10行就能搞定)。現在從頭再溫習一遍python,實現crawler抓些實驗資料。(順便推薦本好書《Python核心編程》)

1. 資料類型

Python 常見資料類型包括:number,string,tuple,list,dict等,都不需要顯示聲明資料類型,只要賦值自動按照值的類型判斷資料類型。

如a="holyshit!" ,在之前可以沒有任何變數a的聲明直接賦值為字串。

tuple是一種類似於const數組的資料類型,同樣a=(100,99,77)不需要聲明資料類型,其中一旦定義之後tuple中的值不可改變;

list相當於數組,a=["dk","mk","am"],不同於tuple,可以改變list的值,如:a.append("Lich");a[0]="DH";

dict是一種相對複雜的資料類型,相當於hash_map<>...dict中儲存著key-value對,是一種典型的hash類型,例如:

a={"human":["AM","BM","MK"],"UD":["Lich","DK"]};

怎麼樣,夠簡潔吧!相比於C語言要定義一個字串:

C:

char * str = (char *)malloc(100*sizeof(char));

sprintf(str,"holyshit!");

Python:

str = "holyshit!";

其他就更不必說了~除了資料類型用起來灰常方便,OO能力也是相當的強

 

2. 物件導向

 

Python的類中包含了幾個特別的屬性和函數:self,__init__() ....

self 是一種類似於C++中this指標的東西:

class WAR3:

def __init__(self,race_a,race_b,name_a,name_b):

self.race_a = race_a;

self.race_b = race_b;

self.name_a = name_a;

self.name_b = name_b;

def game_info(self):

print "This game info:%s[%s] vs. %s[%s]"%(self.name_a,self.race_a,self.name_b,self.race_b);

 

a = WAR3("HUM","ORC","SKY","GRUBBY");

a.game_info();

在上面這個類中可以看到在定義類成員函數的時候要在函數參數中加入self變數,其作用就是用來指向成員變數。

從上面還能看到__init__()函數的作用,建構函式。。。像吧,python會預設將參數傳遞給__init__()完成初始化。。。

 

 

 

回去睡覺了 TO BE CONTINUE



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.