2 基本的語法
在學習python其它知識之前,先理解幾個基本語法概念,這樣才可以理解它的**是怎麼樣排列組合的,否則編輯出來的文字檔案並不能叫做程式,因為python的執行環境並不能對它進行解釋執行,沒有正確的結果輸出。
2.1 大小寫區分
在python程式中,對於每乙個變數的名稱都是大小寫區分的,比如my和my是兩個不同的變數。
2.2 空格和製表符
在編寫程式時,都需要對程式進行排版,否則看起來不清楚,不明白,不容易理解。但在python裡,排版不僅僅是為了好看,還當作一種語法來看待。這樣看來,它是語法,如果不按它的排版來做,意味著程式執行不了,或者執行結果不對。每一行**的縮排,都認為是乙個新的作用域開始,都是乙個**塊的開始,具有相同縮排的**是同乙個**塊。如果都使用空格來縮排,那麼相同空格的**行表示在同乙個作用域裡。如果使用製表符來對齊,也是相同製表符的**行表示為同乙個作用域。既然空格和製表符都可以排版作用,是否就可以在同乙個程式裡混合使用呢?答案是否定的。雖然在一些編輯器裡空格和製表符顯示出來的效果一樣,但實際在處理程式上有差別。比如製表符定義為乙個製表符就縮排兩個空格,那麼兩個製表符與四個空格在排版上是一樣的結果,但實際上在**分析裡難以判斷出來。因為製表符是兩個字元,而空格是四個字元,這樣就不知道這兩行**在縮排上是否屬於同乙個作用域了。因此,在python的程式永遠不要混合製表符與空格對齊的**。在編寫程式之前,把所有製表符轉換為輸出相應的空格來替代, 這樣在程式編碼裡永遠只有空格,沒有製表符了。由於python是一種強制縮排**的語言,它的排版是非常好看的,**層次感更加好。不像其它語言,排版不作為語法,導致每個人使用不一樣的規則,編寫出來的程式,還需要使用其它工具來檢查程式是排版一致性,還需要規定**排版的規則。也許有人說,這樣**不緊湊,占用過多的螢幕空間。如果放在電腦剛發明的時候,也許是正確的,因為那時的顯示器沒有多大,能一屏裡多看些**是有優勢的。但在今天,顯示器都已經普及24寸了,在這方面已經沒有物理上的限制了。優點就更加顯現出來,作為python的程式設計師,熱烈地擁抱這個偉大的優點吧!
2.3 物件
物件何物也?物件是指對面的大象嗎?顯示不是,那麼物件又是指熱戀中的情人嗎?也不是。物件在程式設計的世界裡,有著特別的意義。它是指客觀世界裡的人、物、事等直接在計算機邏輯中的對映。在程式設計史中,最有名的等式是:
程式 = 資料結構 + 演算法
在沒有發明物件導向程式設計之前,都是使用上在這個等式來指導編寫程式的,比如碰到乙個問題,就先尋找表示這個物體的結構,再思考對這個結構的操作演算法,這樣在c語言代表裡,就宣告有很多結構,然後再寫很多很多函式,這樣就完成程式的功能。如果想把這個程式的結構修改一下,所有與這個相關的函式都需要修改,但因為它們之間沒有明確的關聯,修改起來就需要乙個乙個地查詢,比較容易有一些函式沒有修改到。後來人們發現把資料結構與演算法寫到一起,就更加容易維護和明白了。這樣程式就會變成下面這樣的等式:
程式 = 物件 + 物件
物件 = 資料結構 + 演算法
在這一種思路的轉變之下,程式維護更加方便了,封裝得更完善。因為不同的資料結構對應著不同的演算法,但同一種資料結構可能演算法有很多種,比如剛開始時,編寫的演算法可能是盡量簡單,開發速度盡量快,而不是演算法有多少優秀,減少多少的cpu執行。在專案初期,大家都不清楚那些**執行最多,那些**是關鍵**,那些**是需要優化的,只有在測試和客戶試用之後,才會了解到那些**需要優化了,這時就可以對原來的演算法進行改寫,但又不是影響原來的**,這樣使用物件來程式設計,就顯得非常方便了。有這麼大的優點,在python裡所有東西都是物件,就連資料的基本型別都是由物件組成的。比如字串物件,列表物件。這樣使用起來,就很方便了,但也帶來一點壞處,就是占用記憶體會有點大,速度也會變慢一點。
2.4 作用域
在編寫乙個大規模的軟體裡,有幾百萬行**,有數萬人開發的情形,在這種情況這下,要保證所有人編寫的名稱不重複,使用傳統的語言顯然是有點難度的。那麼近代的語言都會使用作用域來限制變數的訪問的侷限性。像python使用函式和模組的作用域,在函式裡使用的變數只能在函式裡使用,而不能函式外面使用。或者變數在某個模組裡使用,就不能在別的模組裡直接使用了,當然要在別的模組裡使用,就得採用顯式說明的方式才可以。比如a模組裡使用的變數count,在b模組裡也使用的變數count,在c模組裡要訪問a和b模組裡的變數,就要採用如下的方式:
a.count和b.count
通過這樣的方式,無論在a或b模組的變數,都不會相互干擾,達到變數作用域的限制。因此,在python裡,模組也是乙個物件,不同的模組就是不同的物件。
mysql 的基本語法 MYSQL基本語法
資料庫 可視為電子化的檔案櫃 儲存電子檔案的處所 為什麼使用資料庫 持久化 方便管理資料 結構化查詢 非結構化查詢 net start 程式 啟動 net stop 程式 結束 mysql uroot p3307 p 新建資料庫 create database 資料庫名 使用資料庫 use 資料庫名...
mysql的基本語法 mysql的基本語法
正文本篇文章主要是記錄一些常用的mysql語法,方便使用時候進行查閱。linux上常用命令 命令都以 結尾 1,登入mysql mysql u賬號 p密碼 2,檢視幫助 help 或者 h 3,檢視有哪些資料庫 show databases 4,進入某個資料庫 use databasename 5,...
go基本語法 golang基本語法
匯入包 import fmt import fmt os 函式外申明變數 var a int 函式內申明變數 a slice申明 slice本質是指向陣列的指標 var s int var s int make int,3 s make int,3 基於陣列建立slice a 3 int s a 3...