Python入門(二)——IDE選擇PyCharm,輸入和輸出,基礎規範,資料類型和變量,常量,字元串和編碼,格式化
我們從今天就開始正式的學習PY交易了,PY交易還行,我們有基礎之後學習起來倒不是說那麼的被動,我學習的是Python2.7,雖然現在随着版本的遷移至Python3,但是這個并不會對我們造成什麼困擾,畢竟隻是一個适應階段
我們雖然在前面一章已經配置過,但是我們還是有很多的IDE可以開發Py,比如sublime text,又比如notpad++,其實都是可以的,但是你想找到一款專門用來開發的,就比如Android studio那樣等級的開發工具,那我這裡就推薦PyCharm不用懷疑,就直接用它了
安裝的過程大家就自行百度了,以及配置什麼東西之類的,這個也是基于idea來實作的,所有大家應該輕車熟路
輸出我相信大家應該很熟悉了,這裡我列舉幾個輸出,大家一看就會了
這樣輸出的結果可以看到
ok,輸出沒啥說的,我們來看下輸入,輸入的話其實py有一個特定的函數,那就是raw_input(),我們來看下實際的案例
這句代碼的意思很明顯,就是提示請輸入名字,然後我輸入名字之後列印出來,來看下運作
任何計算機程式都是為了執行一個特定的任務,有了輸入,使用者才能告訴計算機程式所需的資訊,有了輸出,程式運作後才能告訴使用者任務的結果。
輸入是Input,輸出是Output,是以,我們把輸入輸出統稱為Input/Output,或者簡寫為IO。
raw_input和print是在指令行下面最基本的輸入和輸出,但是,使用者也可以通過其他更進階的圖形界面完成輸入和輸出,比如,在網頁上的一個文本框輸入自己的名字,點選“确定”後在網頁上看到輸出資訊。這些都是後話了。
我們來看下官方的一段例子
這段代碼很簡單,一個注釋,一個判斷語句,在PY中,注釋是以#開頭
其他每一行都是一個語句,當語句以冒号“:”結尾時,縮進的語句視為代碼塊。
縮進有利有弊。好處是強迫你寫出格式化的代碼,但沒有規定縮進是幾個空格還是Tab。按照約定俗成的管理,應該始終堅持使用4個空格的縮進。
縮進的另一個好處是強迫你寫出縮進較少的代碼,你會傾向于把一段很長的代碼拆分成若幹函數,進而得到縮進較少的代碼。
縮進的壞處就是“複制-粘貼”功能失效了,這是最坑爹的地方。當你重構代碼時,粘貼過去的代碼必須重新檢查縮進是否正确。此外,IDE很難像格式化Java代碼那樣格式化Python代碼。
最後,請務必注意,Python程式是大小寫敏感的,如果寫錯了大小寫,程式會報錯。
這個和Java其實差不多我們一個個來分析
整數
python可以處理任意的整數,也包括附屬,1,100 ,-20等,計算機由于是二進制有時候用十六進制表示整數更加的友善,十六進制使用0x字首和0-9,a-f表示,比如0xff00,0xdf522等
浮點數
浮點數也是小數點,之是以叫做浮點數,是因為科學計數法表示時,一個浮點數的小數點位置是可變的,比如1.23x109和12.3x108是相等的。浮點數可以用數學寫法,比如1.23,3.14,-9.01等
整數和浮點數在計算機内部存儲的方式是不同的,整數運算永遠是精确的(除法難道也是精确的?是的!),而浮點數運算則可能會有四舍五入的誤差。
字元串
字元串是單引号或者雙引号來表示,比如“abc”或者‘abc’
如果字元串在内部也包含了‘’又包含“”,可以用轉義符\來辨別,比如
這樣輸出
轉義字元還有很多,比如\n辨別換行,\t辨別制表符,\本身就是轉義,所有\辨別的字元就是\,是以在python的互動指令中用列印可以看
我們來看下輸出
可以看出\和\是一樣的,\n換行,\t是空格
如果字元串裡面有很多字元都需要轉義,就需要加很多\,為了簡化,Python還允許用r”表示”内部的字元串預設不轉義,我們來看下代碼
這樣的話,我們輸出的:
可以看出,首先是雙斜杠然後制表符然後又是雙斜杠,是以輸出\ \,而我們加入了r之後就是不轉義,也就是全部輸出了
如果字元串内部有很多換行,用\n寫在一行裡不好閱讀,為了簡化,Python允許用”’…”’的格式表示多行内容,我們來看下代碼
來看下輸出
其實這個很好了解,就是前後都是三個點去表示,然後中間就随意換行,反正會格式化就對了
布爾值
布爾值就兩個,True和False,他和Java不一樣的地方在于他是首字母大寫。我們來看下
這樣就輸出了
這裡提到布爾值,那就要說一下他的運算了
and運算是與運算,隻有所有都為True,and運算結果才是True:
我們來看下例子
這裡我們不難猜出,他的運算結果
or運算是或運算,隻要其中有一個為True,or運算結果就是True:
運算結果是什麼呢?
not運算是非運算,它是一個單目運算符,把True變成False,False變成True:
你可以把他了解為取反就好了
空值
空值是Python裡一個特殊的值,用None表示。None不能了解為0,因為0是有意義的,而None是一個特殊的空值。
你可以把他了解為Java中的null
變量
變量就是假設性的的,比如我們有一道數學題,知道這個正方形的周長為12,那麼我們就可以這樣去計算
而這個a就是變量
變量名必須是大小寫英文、數字和_的組合,且不能用數字開頭,比如:
這就表示變量a是一個整數
在python中,等号=是一個指派的語句,可以把任意資料類型指派給變量,同一個變量可以反複指派,而且可以是不同類型的變量,例如:
這種變量本身類型不固定的語言稱之為動态語言,與之對應的是靜态語言。靜态語言在定義變量時必須指定變量類型,如果指派的時候類型不比對,就會報錯
最後,了解變量在計算機記憶體中的表示也非常重要。當我們寫:
這個時候python其實幹了兩件事
1.在記憶體中建立’ABC’的字元串
2.在建立一個名為a的變量,并把他指向’ABC’
也可以再把一個變量指派給另外一個變量,這個操作其實就是講前面變量指向的字元串指向後面的變量,比如:
這樣毫無疑問是輸入ABC
常量
所謂的變量就是可變化的量,常量就是不變的,比如π,在Python中,通常用全部大寫的變量名表示常量,比如
事實上這個PI依舊是個變量,Python根本沒有任何機制保證PI不會被改變,是以,用全部大寫的變量名表示常量隻是一個習慣上的用法,如果你一定要改變變量PI的值,也沒人能攔住你,哈哈。
在python中,Python提供了ord()和chr()函數,可以把字母和對應的數字互相轉換:
我們來看下輸出什麼
這就是python對ASCII編碼的支援,Python在後來添加了對Unicode的支援,以Unicode表示的字元串用u’…’表示,比如:
如果你需要轉碼的話,可以這樣
如果反碼的話,可以用decode
如果你想檢視字元串的長度,python有一個len函數支援
可以看出
其實解決編碼的辦法也很簡單,我們隻需要指定編碼就好了,在第一行加上
這樣就支援中文了
有什麼我們會輸出一些固定格式的語句,比如
這個xx就是變化的,在python中,用%去格式化語句,比如:
我們先來看下輸出
是不是就很好了解了,這個類型轉義符的替換,後面通過%去接一個口号,括号裡對應着要填補的内容
常見的占位符有:
%d 整數
%f 浮點數
%s 字元串
%x 十六進制整數
如果你不确定是什麼,%s永遠起作用
其實所謂的編碼,還是python的版本問題,這個以後我們學得深入的時候就自然就熟悉了,好了,今天這章到這裡就結束了,我們後面也會越來越深入的去學習python,大家一起加油吧!
原文位址http://www.bieryun.com/2609.html