[轉載]看完《python簡明教程》筆記及第一個python程式

來源:互聯網
上載者:User


 

主要是摘抄了一些書上需要注意的地方:

 

 

1.         Python 是一門解釋性語言。

在電腦內部, Python 解譯器把原始碼轉換成稱為位元組碼的中間形式,然後再把它翻譯成電腦使用的機器語言並運行。

2.         版本 2.3 與 3.2 區別?比如 3.2 中查看版本號碼? 2.3 中 python -V

3.         // 符號表示取整數

4.         ** 符號冪運算

5.         沒有 switch 語句,可用 if .. elif..else.. 代替,或者字典代替

6.         True 、 False 寫法

7.         While 寫法,最後可以跟一個 else 從句

8.         for 寫法,記住, for..in 迴圈對於任何序列都適用, for i in range(1,5) 與 js 寫法類似,最後也可以呆一個 else 從句

9.         預設地, range 的步長為 1 。如果我們為 range 提供第三個數,那麼它將成為步長。例如, range(1,5,2) 給出 [1,3] 。記住, range 向上延伸到第二個數,即它 包含第二個數 .

10.     global 定義全域變數

11.     只有在形參表末尾的那些參數可以有預設參數值,即你不能在聲明函數形參的時候,先聲明有預設值的形參而後聲明沒有預設值的形參。 
這是因為賦給形參的值是根據位置而賦值的。例如, def func(a, b=5) 是有效,但是 def func(a=5, b) 是 無效 的。

12.     關鍵參數

13.     注意,沒有傳回值的 return 語句等價於 return None

14.  pass 語句在Python 中表示一個空的語句塊

15.     文檔字串的慣例是一個多行字串,它的首行以大寫字母開始,句號結尾。第二行是空行,從第三行開始是詳細的描述。 強烈建議 你在你的函數中使用文檔字串時遵循這個慣例。

16.  print(printMax.__doc__) 注意是雙底線或print(help(printMax))

17.     記住,指令碼的名稱總是 sys.argv 列表的第一個參數。 Java 中第一參數就是外部的參數。

18.     列表 shoplist = ['apple', 'mango', 'carrot', 'banana']

19.     元組 zoo = ('wolf', 'elephant', 'penguin')

20.     含有 個或 個項目的元組。 一個空的元組由一對空的圓括弧組成,如 myempty = () 。然而,含有單個元素的元組就不那麼簡單了。你必須在第一個(唯一一個)項目後跟一個逗號,這樣 Python 才能區分元組和運算式中一個帶圓括弧的對象。即如果你想要的是一個包含項目 2 的元組的時候,你應該指明 singleton = (2 , ) 。而列表不要加逗號。

21.     字典,類似 map

22.     序列切片操作符是序列名後跟一個方括弧,方括弧中有一對可選的數字,並用冒號分割。序列的神奇之處在於你可以用相同的方法訪問元組、列表和字串。

23.     mylist = shoplist # mylist is just another name pointing to the same object!

24.     mylist = shoplist[:] # make a copy by doing a full slice 。這是複製,而 23 屬於引用,參考。

25.     檔案名稱可以和類名不同,與 java 不一樣。

26.     注意 __del__ 方法與 destructor 的概念類似。按照對象建立先後倒著銷毀對象,自動調用的。

27.     繼承方式寫法: class Student(SchoolMember): ,也沒了 super 關鍵字

28.     對檔案讀寫: f = open('D:/poem.txt','w')

29.     使用 pickle 儲存時候,需要 f = open(shoplistfile,'wb') ,加個 ’b’ ,表示 binary

30.     函數中接收元組或字典:由於在 args 變數前有 * 首碼,所有多餘的函數參數都會作為一個元組儲存在 args 中。如果使用的是 ** 首碼,多餘的參數則會被認為是一個字典的鍵 / 值對。

31.     lambda 語句被用來建立新的函數對象,並且在運行時返回它們。

32.       exec 語句用來執行儲存在字串或檔案中的 Python 語句。

33.       eval 語句用來計算儲存在字串中的有效 Python 運算式。

 

看完書後,寫的第一個python程式(通訊錄),功能不完善:

使用者資訊類:

'''''<br />Created on 2011-6-16<br />@author: alen<br />'''<br />class Person(object):<br /> '''''<br /> use it to write person'info<br /> ''' </p><p> def __init__(self,name,email,phone):<br /> self.name = name<br /> self.email = email<br /> self.phone = phone

管理類:

'''''<br />Created on 2011-6-16<br />@author: alen<br />'''<br />import PersonInfo<br />info = {}<br />def addPerson(Person):<br /> info[Person.name] = Person </p><p>if __name__ == '__main__':<br /> print('-------------------Welcome------------------------------')<br /> print('1.add user')<br /> print('2.delete user')<br /> print('3.revise user')<br /> print('4.search user')<br /> print('--------------------------------------------------------')<br /> print('please select your choice:')<br /> number = int(input())<br /> if number == 1:<br /> print('please input your name:')<br /> name = str(input())<br /> print('please input your phone:')<br /> phone = int(input())<br /> print('please input your email:')<br /> email = str(input())<br /> p = PersonInfo.Person(name,email,phone)<br /> addPerson(p)<br /> elif number == 2:<br /> pass<br /> elif number == 3:<br /> pass<br /> elif number == 4:<br /> print('please input your name:')<br /> name = str(input())<br /> if name in info:<br /> print('you search is %s:' % info[name] )<br /> print(info)

 

運行管理類即可,這隻是學習python一個"開始的結束"~

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.