標籤:
1、兩個整數相除,計算結果的小數部分被截除,結果仍然是一個整數;
如:1/2=0
2、整數和浮點數相除、或者浮點數之間相除,結果有小數部分,仍然是一個浮點數;
如:1/2.0=0.5 1.0/2=0.5 1.0/2.0=0.5 1/2.=0.5
3、雙斜線(//)定義整除運算
如:1.0//2.0=0.0 1//2=0
4、%定義取餘運算(求模運算)
如:10%3=1 2.75%0.5=0.25
5、**定義冪運算(乘方運算)
如:2**3=8 -3**2=-9
6、輸入16進位運算式會自動轉化成十進位,輸入8進位也同樣會自動轉化成十進位。以0x開頭的為16進位,以0開頭的為8進位
7、變數定義:變數名可以包括字母、數字和底線(_),變數不能以數字開頭
x=3是賦值運算式
8、在互動式解譯器中,輸入運算式和輸入語句的結果是相同的。
如:print 2*2
和:2*2
結果都會列印4
但是在程式編寫中不會這樣,只有寫語句才能完成列印輸出。
運算式是某事,語句是做某事。
9、擷取使用者輸入
使用input函數擷取使用者輸入
>>>x=input("x:")
x:34
>>>y=input("y:")
y:42
>>>print x*y
1428
x,y通過兩次輸入接收使用者輸入的值,再參與後續的運算式運算
10、幾個函數
pow(a,b)=a**b-----乘方函數
abs(a)------絕對值函數
round(b)------把浮點數四捨五入為最接近的整數值
11、整除運算可以截取小數部分,只保留整數部分
round()函數可以四捨五入取整
使用math模組的floor函數可以實現向下取整,如:
>>>import math
>>>math.floor(32.9)
32.0
先使用import匯入模組,然後按照“模組.函數”的格式使用這個模組的函數
與floor相對的是ceil函數,可以向上取整為最小的整數
如果不想每次調用模組中的函數時都要使用“模組.函數”的格式,則可以使用另外一種形式:
>>>from math import floor
>>>floor(32.9)
32.0
通過“from模組import函數”後可以直接使用floor函數,而不再需要模組名首碼
12、使用sqrt()函數可以計算一個數的平方根,但是只能處理正數
對於負數,可以使用cmath模組(針對複數運算的模組)來實現開方功能
如:
>>>import cmath
>>>cmath.sqrt(-1)
1j
虛數以j或者J結尾,比如:
>>>(1+3j)*(9+4j)
(-3+31j)
使用這個函數時,最好不要使用“from模組import函數”這種形式,因為一旦使用,sqrt只能是cmath模組中的sqrt函數,而不能再使用math模組中的正常的sqrt函數,所以還是使用“模組.函數”格式。這樣cmath模組和math模組中的sqrt()函數可以同時使用
13、.py是指令檔尾碼名
在windows系統中雙擊.py檔案可以從cmd視窗開啟Python檔案,但是輸入命令後或者不輸入命令視窗都會立刻關閉,在檔案最後加上
raw_input("press <enter>")
這一句可以讓視窗不會關閉
14、使用單引號和雙引號都可以來表示字串,但是注意字串自身含有的單引號和雙引號,這時候要麼分別使用雙引號或者單引號,要麼使用反斜線作為逸出字元,當然,也可以通過字串拼接的方式完成輸出
15、字串拼接
>>>"hello,"+"world!"
‘hello,world!‘
>>>x=‘hello,‘
>>>y=‘world!‘
>>>x+y
‘hello,world!‘
16、使用print列印字串
>>>print ‘hello,world!‘
hello,world!
對比可以看到,直接使用python列印的字串是帶有引號的,而使用print函數列印出來的結果是沒有引號的
這是因為所有直接通過互動命令在python中列印的都保持了該值在python代碼中的狀態。又比如:
>>>10000L
10000L
>>>print 10000L
10000
這一點類似於兩個字串函數,即str()函數,repr()函數
>>>print repr(‘hello,world!‘)
‘hello,world!‘
>>>print repr(10000L)
10000L
>>>print str(‘hello,world!‘)
hello,world!
>>>print str(10000L)
10000
總結如下:str()、repr()是將python值轉化為字串的2種方法,函數str()將字串變得更易閱讀,repr()則把結果字串轉換為合法的python運算式
17、接收輸入的兩種方式:input和raw_input
使用input接收輸入時,使用者必須輸入合法的python運算式,即用單引號(雙引號)括起來的字串
否則就會報錯。
而使用raw_input接收使用者輸入時,可以不用添加單引號或雙引號來註明是字串。raw_input在接收後會自動將其添加引號識別為字串。
因此,除非對input有特別的需要,否則應該儘可能的使用raw_input函數。
18、長字串
如果需要寫一個很長很長的字串,並且需要跨多行,那麼可以使用三個單引號或者三個雙引號來替代普通引號
比如:
使用三個單引號(雙引號)時,不用再擔心內部字串自身若包含單引號或雙引號時造成的錯誤,也不需要再使用逸出字元進行轉義。
19、一般字元串也可以通過反斜線來換行,這需要在一行的最後書寫一個反斜線。
這時候反斜線只提示換行的意思,不會被列印出來。
20、原始字串:
當字串中包含有反斜線時,會被認為是逸出字元。如:
\n作為分行符號,可以在字串中任何需要換行的地方完成換行操作,\‘是對‘進行轉義,表示‘是字串自身的一部分,而不是代表字串的結束符
但是有時候我們需要輸入反斜線本身,比如一些目錄路徑
我們希望的輸出應該是‘c:\nDrivers‘
但是python認為反斜線是轉義的作用。
解決辦法有兩種,一是再使用一個反斜線,對反斜線本身進行轉義。如:
但是當字串內部自身帶的反斜線很多時,就很麻煩。這時候使用第二種解決辦法,即:使用原始字串標記法。
原始字串以r開頭,可以在字串中放入任何字元,唯一的要求是不允許最後一個字元是反斜線。如果滿足這唯一一點要求,就可以認為字串中的任何字元都是字串自身的一部分。
21、Unicode字串:
與字串並不是同一資料類型,用u開頭,比如:u‘hello,world!‘python中一般字元串以8為ASCII碼儲存,但是unicode字串則是以16為unicode字元儲存。在python3.0以上所有字串都是Unicode字串。22、小結:演算法——是描述如何完成一項任務的方法運算式——通過運算子和函數來構建的,其中也可以包含變數,用於表示值變數——用於表示值語句——告訴電腦做某些事情的指令函數——可以帶有參數,可以傳回值模組——擴充,將它匯入到python中後從而擴充python的功能字串——文本 不足之處,還請多多指教。轉載請註明出處!
python基礎教程學習筆記---(1)基礎文法