python學習整理--3/3

今天又重新學起了python這門語言,帶着新的目的和又漲一歲的自己,其實早在去年的暑期曾學過一段時間,但是最後無疾而終,這次我真心希望可以掌握一門實用的語言來充實自己,之前的學的不論是c還是java,自我感覺除了做題以外一點都用不上,但感覺python這門語言一旦學好可以用來做很多事情,爲此,我也開了這個微博,以此來記錄和監督自己的學習之路!


1、python是一門面向對象解釋型計算機程序設計語言,解釋型區別於編譯型語言,解釋實時解釋,編譯一次性編譯。

同時面向對象區別於面向過程,面向過程就是分析出解決問題所需要的步驟,然後用函數把這些步驟一步一步實現,使用的時候一個一個依次調用就可以了。 

面向對象是把構成問題事務分解成各個對象,建立對象的目的不是爲了完成一個步驟,而是爲了描敘某個事物在整個解決問題的步驟中的行爲。

例如五子棋,面向過程的設計思路就是首先分析問題的步驟:1、開始遊戲,2、黑子先走,3、繪製畫面,4、判斷輸贏,5、輪到白子,6、繪製畫面,7、判斷輸贏,8、返回步驟2,9、輸出最後結果。把上面每個步驟用分別的函數來實現,問題就解決了。

而面向對象的設計則是從另外的思路來解決問題。整個五子棋可以分爲 1、黑白雙方,這兩方的行爲是一模一樣的,2、棋盤系統,負責繪製畫面,3、規則系統,負責判定諸如犯規、輸贏等。第一類對象(玩家對象)負責接受用戶輸入,並告知第二類對象(棋盤對象)棋子佈局的變化,棋盤對象接收到了棋子的i變化就要負責在屏幕上面顯示出這種變化,同時利用第三類對象(規則系統)來對棋局進行判定。

可以明顯地看出,面向對象是以功能來劃分問題,而不是步驟。同樣是繪製棋局,這樣的行爲在面向過程的設計中分散在了總多步驟中,很可能出現不同的繪製版本,因爲通常設計人員會考慮到實際情況進行各種各樣的簡化。而面向對象的設計中,繪圖只可能在棋盤對象中出現,從而保證了繪圖的統一。


2、python的變量是指向關係,不同於C語言的內存關係,所以不可以通過變量名修改其指向數據單元的內容。


python的數據類型不需要指定type,區別於C語言,從而變得更加簡潔。


3.print()格式化輸出

print(format(值,格式字)

eg:print(format(12.345,‘6.3f’))

wKiom1bYMxjgnVKxAABvGN9RZAc559.png

當站位數大於原值的位數時,輸出值右對齊,前面留出相應的空格。

當佔位數小於原值的位數時,此時忽視格式化,依舊打印出原值的位數。


4、python的庫十分龐大和豐富

eg:

import math;

import os;  listdir顯示目錄下文件,getcwd顯示當前工作目錄

import socket; gethostbyname返回網站的域名地址 (gethostbyname(‘www.baidu.com’)


that's all

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章