標籤:檢驗 使用 str ctrl 作者 程式 ... ctr 定義變數
安裝與運行互動式解譯器
在絕大多數linux和 UNIX系統安裝中(包括Mac OS X),Python的解譯器就已經存在了。我們可以在提示符下輸入python命令進行驗證(作者環境ubuntu)
[email protected]:~$ python Python 2.7.3 (default, Sep 26 2012, 21:53:58) [GCC 4.7.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
Ok ! 如果敲入python命令出現以上資訊時,表明我們已經安裝了python 環境。
如果沒有安裝,在ubuntu /Debin linux ,那麼可以用下面的命令來安裝Python:
$ apt-get install python
如果是window 下的安裝,以及linux 下下載源碼包的安裝,相信此類人問題很容易找到,這裡就不具體講解了。相信比第一次配置java環境要簡單的多。
輸入一下命令,看其是否可以正常運行。
>>> print "hello,world!" hello,world!
注意:如果要推出互動式解譯器,可以ctrl+D
演算法是什嗎?
在認真編程之前,先來說說什麼是電腦程式設計,簡單地說,電腦程式設計就是告訴電腦做什麼事。電腦可以做很多事,但它不會自己思考,需要我們告訴它具體細節,需要用電腦能夠理解的語言將演算法告訴它。“演算法”不過是“程式”或者“食譜”的另一種悅耳的說法----詳細描述如何做某事。
小蔥拌豆腐、豆腐、
首先,拿一些豆腐;(聲明一個變數)
然後加入小蔥在豆腐上。(兩個變數相加)
如果需要特殊辣味的豆腐。(考慮特定的條件)
煮熟---每10分鐘檢查一次。(重複運行此指令)
食譜和演算法都包含一些要素(對象、物品),以及指令(語句)。“小蔥” 和“ 豆腐” 就是要素。指令包括“加入小蔥在豆腐上” 等。
數字和運算式:
互動式python解譯器可以當強大的計算機使用
>>> 1-2 -1 >>> 1+2 3 >>> 32784*13 426192 >>> 1/2 0
什麼情況?1除2 不是應該等於0.5嗎?怎麼是0呢? “/” 用於取整,不夠整除,肯定就是0了,試試浮點數
>>> 7/2 3>>> 1.0/2.0 0.5
試試“%” 取餘
>>> 6 % 3 0 >>> 6 / 3 2 >>> 6 % 3 0 >>> 7 / 3 2 >>> 7 % 3 1 >>> 13 % 9 4>>> 0.75 % 0.5 0.25
看明白整除(/)與取餘(%)的區別了吧。
6 / 3 剛好被2整除,所以餘數(%)是0 , 13 / 9 只能帶得到1個9 ,餘數就是4 。
下面再試試“ ** ” 冪運算(乘方)符
>>> 2*2*2 8 >>> 2**3 8 >>> 2**6 64 >>> -3**2 -9 >>> (-3)**2 9
2的3次方可以用乘方符(**)表示,這樣就相當方便。
乘方符的比取反(一元減運算子)的優先順序高,所以-3**2 等同於-(3**2),如果想計算(-3)**2 ,就需要顯式說明。
長整數
python可以處理非常大的數
>>> 100000000000000000000000 100000000000000000000000L >>> 100000000000000000000000L 100000000000000000000000L
普通整數在2 147 483 647 至 -2 147 483 647 之間,超出可以用長整形表示(L) ,我們也可以自己把整數轉換成長整型(輸入時在末尾加“L”)
變數
這個和其他程式設計語言沒有任何不同,如果你從沒接觸過程式,相信你也很容易理解。
>>> x = 3 >>> x*2 6>>> x = 5 >>> x * 2 1
把3 賦值給 x ,那麼x 變數現在的值就是3, x 乘以 2 結果是6 ,我又把5 賦值給了 x ,那麼與2相乘的結果肯定是10了。
定義變數規則:不能以數字開頭,可以包含字母、數字和底線。
語句
實際上最開始我們已經講了語句 print 就是列印輸出語句。
>>> 2*2 4 >>> print 2*2 4
雖然結果一樣,上面的是運算式,下面的是語句。
擷取使用者輸入
有使用程式啟動並執行過程需要使用者輸入,根據使用者輸入的內容繼續執行。
>>> input("輸入運算式:") 輸入運算式:2*2 4
程式的第二行等待使用者輸入,2*2 是由使用者隨便輸入的。下面看個更有意思點的。
>>> x=input("x:") x:15 >>> y=input("y:") y:32 >>> print x*y 480
哎~!別傻看了,和我一起敲才有意思呢! 我保證下面的你看不懂!
>>> if 1==2 : print ‘one equals two‘ ... >>> if 1==1 : print ‘one equals one‘ ... one equals one
算了,告訴你吧,如果1等於(==)2,條件是假(就是不成立),print ‘one equals two‘ 將不被執行。
如果1等於(==)1,條件是真(成立),print ‘one equals ‘ 將被執行。
函數
前面介紹過使用冪運算子(**)來計算乘方。事實上,可以用函數來代替運算子,這個函數就是pow :
>>> 2**38>>> pow(2,3)8
函數就像可以用來實現特定功能的小程式一樣。python的很多函數都做很奇妙的事情。我們也可以自訂函數。因此,我們通常把pow等系統提供的函數稱為 內建函數。
>>> 10+pow(2, 3*5)/3.010932.666666666666>>> abs(-10)10>>> 18/131>>> round(18.4/13.7)1.0
我們當熱可以使用函數調用和運算子建立更複雜的運算式; abs()函數可以得到數人絕對值,round函數則會把浮點數四捨五入為最接近的整數值。
模組
可以把模組想象成匯入到python以增強其功能的擴充。需要使用特殊人命令import來匯入模組。
>>> import math>>> math.floor(32.9)32.0>>> int(math.floor(32.9))32
floor 函數的功能是取整。因為floor()函數屬於math模組,所以在使用之前要先匯入模組(import math),然後按照(模組.函數)的格式使用這個模組的函數。
如果想把32.9轉換為整數(32)而不是浮點數(32.0),可以使用int函數。
在確定自己不會匯入多個同名函數(從不同模組匯入)的情況下,你可能不希望在每次調用函數的時候,都要寫模組的名字。那麼,可以使用import命令的另外一種形式:
>>> from math import sqrt>>> sqrt(9)3.0>>> sqrt(8)2.8284271247461903
sqrt()函數用於計算一個數的平方根。
儲存並執行程式
本人在ubuntu 下進程學習,一個python命令就進入了互動式解譯器。互動式解譯器是python的強項之一,它讓即時檢驗解決方案並且體驗這門語言成為了現實。但是,在互動式解譯器裡面輸入的一切都會在它退出的時候丟失。我們真正想做的事情是編寫自己和他人都能啟動並執行程式。
下面我們建立一個檔案[email protected]:/hzh/python# touch hell.py[email protected]:/hzh/python# lshell.py[email protected]:/hzh/python# vi hell.py輸入:print “hello,world!”儲存退出。運行[email protected]:/hzh/python# python hell.py hello,world!
看!這就是一個可以一直啟動並執行程式。 好吧!以上面的這種方式,在來做個有意思的程式。
開啟檔案,輸入一下程式:name=raw_input("what is your name?")print "hello "+name+ " !"儲存退出,運行![email protected]:/hzh/python# python hell.py what is your name?huhu // 這裡要求使用者輸入自己的名字hello huhu !
python基礎學習筆記(一)